# Google AdMob インテグレーション

> LevelPlay のメディエーションプラットプラットフォームを使用して、AdMob を React ネイティブ アプリケーションに広告ネットワークワークとして統合します。

> **Important:**
>
> 以下のドキュメントでは、Unity が開発、所有、または運用するものではない製品またはサービス ("サードパーティ製品") を取り上げます。
> その情報は、古かったり、不完全であったりする可能性がありますが、利便性のために提供しています。
> サードパーティ製品を使用する際は、その製品の規約に従うものとします。
> Unity はそれらの製品に関して一切保証を行わず、その使用によって生じた損害や損失 (サードパーティプロバイダーのコンテンツ、広告、製品、資料に関する問題を含む) について責任を負いません。

このガイドでは、Unity LevelPlay メディエーションで AdMob を広告ネットワークとして稼働させる方法をステップごとに説明します。

## 前提条件##prerequisites

* リワード広告、インタースティシャル広告、またはバナー広告をアプリケーションに正しく統合していることを確認します。インテグレーション手順については、以下のプラットフォーム固有のガイドを参照してください。

  **Integration guides:**

  * [リワード広告](/grow/levelplay/sdk/react/rewarded-ads-integration.md)
  * [インタースティシャル](/grow/levelplay/sdk/react/interstitial-integration.md)
  * [バナー](/grow/levelplay/sdk/react/banner-integration.md)

このガイドでは、Unity LevelPlay Mediation で AdMob と AdMob ネイティブをライブ広告ネットワークとして設定する手順をステップごとに説明します。

## 前提条件

LevelPlay SDK の[インタースティシャルメディエーション](/grow/levelplay/sdk/unity/interstitial-integration.md.md)、[リワードメディエーション](/grow/levelplay/sdk/unity/rewarded-ad-integration-package.md.md)、または[バナーメディエーション](/grow/levelplay/sdk/unity/banner-integration.md.md)がアプリケーションに正しく統合されていることを確認します。

Google Ad Manager 広告は、AdMob SDK を使用して配信されます。

AdMob SDK 7.69.0 以降では、AdMob は XCFramework を使用しています。AdMob インテグレーションに CocoaPods を使用している場合は、CocoaPods Version 1.9.0 以降が必要です。

AdMob は Android オペレーティングシステムバージョン 4.1 (API レベル 16) 以降をサポートします。必要な Gradle ビルドツールは 3.5.4 です。\\

AdMob SDK は iOS バージョン 10 以降をサポートしており、iOS バージョン 11 以降のユーザーに対して広告をサーバー配信します。

## ステップ 1. AdMob アカウントの作成

1. Unity LevelPlay Mediationを使用してAdMobのバナーとネイティブ広告インベントリにアクセスするには、AdMobで[アカウントを作成](https://www.google.com/admob/)する必要があります。
2. ironsource プラットフォームに合わせて AdMob アカウントのタイムゾーンを UTC に調整することをお勧めします。これにより、正確なレポートが保証されます。[詳細](https://support.google.com/admob/answer/7276705?hl=en)

## ステップ 2. Admob でのアプリケーションと広告ゾーンの作成

次に、アプリケーションを追加し、AdMob アカウントに広告ゾーンを設定する必要があります。

AdMob では、同じ設定で同じ広告タイプの広告ゾーンを 3 つ以上設定することはできません。\
例えば、メディエーショングループに対して許可されるリワード広告は3つまでです。

### アプリケーションの追加

* AdMob アカウントにログインします。ダッシュボードで、**Appsを**選択します。

* モーダルが表示されます。ここで、アプリケーションの検索、アプリケーションの手動追加、既存のアプリケーションを選択して収益化できます。

  > **Note:**
  >
  > LevelPlay アカウントと同様に、プラットフォーム (iOS + Android) ごとに一意の AdMob アプリケーションが必要です。

* 広告単位形式として、「interstitial」、「rewarded」、「banners」、または「ネイティブ advanced（バナーのネイティブ広告）」を選択し、関連する詳細を入力します。

#### Interstitial (インタースティシャル)

* **広告タイプ**：インタースティシャルではテキスト、画像、ビデオ、リッチ メディアをサポートするため、2 つのボックスはチェックしたままにしておきます。
* **広告ユニット名**: 推奨されるベストプラクティスは、Unity LevelPlay Mediation を通じて AdMob インタースティシャルに提供する広告単位として認識しやすいように、広告単位に直感的に名前を付けることです。

#### リワード広告

* **広告ユニット名**: 推奨されるベストプラクティスは、Unity LevelPlay Mediation を通じて AdMob のリワード広告を配信する広告単位として認識しやすいように、広告単位に直感的に名前を付けることです。

#### バナー

* **広告単位名**： 推奨されるベストプラクティスは、広告単位に直感的な名前を付けて、AdMobバナーを配信する広告単位として認識しやすくすることです。 Unity LevelPlay Mediation
* **eCPMフロア -** 国とウォーターフォール戦略に応じて、eCPM値を有効化して入力します。

> **Important:**
>
> 自動更新:**「Do not refresh」オプションを選択します。**(繰り返しになりますが、更新頻度はメディエーションプラットフォームでコントロールできます)

#### ネイティブ

バナーのネイティブ広告を使用すると、Google AdMob からネイティブ広告の需要にアクセスできます。つまり、Googleのネイティブとバナーの両方の需要にアクセスすることでバナーのパフォーマンスを向上させることができます。

* **広告ユニット名**: 簡単に認識できるように名前を入力します。
  * **詳細設定**：**画像**と**ビデオ**の両方を選択
  * **eCPM floor**：国とウォーターフォール戦略に従って eCPM 値を有効にして入力します。

App IDと広告単位IDを取得し、後で使用するために保存します。次に、**Done (完了**) を選択します。

## ステップ 3. LevelPlay ネットワークワーク設定モジュールで AdMob をアクティベートする

LevelPlay SDK Networks 設定ページで AdMob を設定するときに Google アカウントにサインインします。AdMob インタースティシャル、リワード広告、バナー、ネイティブ広告を実行するために必要なパラメータが自動的に取得されます。

AdMob が LevelPlay SDK で正しく動作するためには、ironsource ネットワーク設定モジュールに AdMob アカウントのデータをいくつか挿入する必要があります。

| データ             | 説明                                          |
| --------------- | ------------------------------------------- |
| App ID (アプリ ID) | Admob のダッシュボードでアプリケーションに割り当てられた一意の ID。      |
| 広告単位 ID         | Admob のダッシュボードでアプリケーションの広告単位に割り当てられた一意の ID。 |
| クライアント ID       | アカウントと広告単位の関係を指定する一意の識別子。                   |
| クライアントシークレット    | クライアント ID とペアになる秘密鍵                         |
| リフレッシュトークン      | クライアントアプリケーションがすでに受信している更新トークン。             |

この情報を取得したら、LevelPlay アカウントで AdMob のパラメータを設定する必要があります。上記の情報を正しく追加することで、AdMob の広告インベントリと Unity LevelPlay Mediation のレポートデータを最大限に活用できるようになります。

1. **App ID (アプリ ID)**
   App ID を取得するには、Admob のプラットフォームの左側のサイドバーにある **Apps** (アプリケーション) タブに移動し、**アプリケーション設定**を選択します。アプリケーションの設定と App ID が表示されます。

![アプリ ID の場所](/api/media?file=/grow/media/images/App-ID-1.png)

2. **広告単位 ID**
   広告単位 ID を取得するには、Admob のプラットフォームの左側のサイドバーにある **Apps** (アプリケーション) タブに移動し、**Ad Units (広告単位**) を選択します。アプリケーションの広告単位と広告単位 ID が表示されます。

![広告単位 ID の場所](/api/media?file=/grow/media/images/Ad-Unit-ID.png)

3. ****Client ID and Client Secret** (クライアント ID とクライアントシークレット)**

   1. **クライアントIDとクライアントシークレット**を取得するには、[GoogleのAPI Manager](https://console.cloud.google.com/apis)にアクセスします。

   2. ページの左上にある **API Project** ドロップダウンを選択し、**Create a project** を選択するか、このアプリケーション用にすでに作成したプロジェクトを選択します。この目的で新しいプロジェクトを作成する場合は、表示されるダイアログボックスに**プロジェクト名**、**課金アカウント**、**場所**を入力し、**Create (作成**) を選択します。

   3. 左側のサイドバーで、**［Credentials］** を選択し、［**OAuth consent screen**］ タブを選択します。 このページで、\*\*Product Name (\*\*製品名) を指定します。**Save** (保存) を選択します。

   4. 左側のサイドバーで、「**ダッシュボード**\*\*」を選択し、「**ENABLE APIS AND SERVICES**」に移動します。

   5. 次に、**AdMob API** を有効にします。

   6. 左側のサイドバーで**Credentials**タブを選択します。**Create Credentials** ドロップダウンを選択し、**OAuth client ID** を選択します。

   7. **ウェブアプリケーション**を選択し、アプリケーションの名前を指定します。下のフィールドに、少なくとも 1 つの **Authorized リダイレクト URI** の[https://developers.google.com/oauthplayground](https://developers.google.com/oauthplayground)を入力する必要があります。例を次に示します。

      * **Authorized JavaScript origins：** `https://YOUR_NAMESPACE **(Optional)**`
      * **Authorized リダイレクト URI：**[https://developers.google.com/oauthplayground](https://developers.google.com/oauthplayground)

   8. **Create** を選択すると、**クライアント ID** と**クライアントシークレット**が表示されます。

4. **リフレッシュトークン**
   1. **リフレッシュトークン**を取得するには、**[OAuth 2.0 Playground](https://developers.google.com/oauthplayground/#step1\&scopes=https%3A//www.googleapis.com/auth/adwords\&url=https%3A//\&content_type=application/json\&http_method=GET\&useDefaultOauthCred=checked\&oauthEndpointSelect=Google\&oauthAuthEndpointValue=https%3A//accounts.google.com/o/oauth2/auth\&oauthTokenEndpointValue=https%3A//www.googleapis.com/oauth2/v3/token\&includeCredentials=unchecked\&accessTokenType=bearer\&autoRefreshToken=unchecked\&accessType=offline\&forceAprovalPrompt=checked\&response_type=code) に移動します。**
   2. 右上隅にある設定アイコンを選択します。**承認プロンプト**の強制というラベルのボックスをオフにし、**Use your own OAuth credentials** をオンにします。**クライアント ID** と**クライアントシークレット**を入力。

![OAuth 設定](/api/media?file=/grow/media/images/AdMob-18.png)

3. 次に、**ステップ 1:& Authorize APIs を選択し**、\*\*[https://www.googleapis.com/auth/admob.report を](https://www.googleapis.com/auth/admob.report)\*\*入力して **Authorize APIs** を選択します。

![Authorize APIs](/api/media?file=/grow/media/images/Step-1.png)

4. プロジェクトに AdMob データへのアクセスを許可します。
5. 次に、ステップ1から承認コードを受け取り、**Exchange承認コード for tokens**ボタンを選択できるようになります。次に、**更新トークン**とアクセストークンを取得します。

![リフレッシュトークン](/api/media?file=/grow/media/images/Admob-22.png)

### LevelPlay アカウントでの AdMob パラメータの設定

* これらのパラメータをすべて設定したら、Ironsource アカウントにログインし、「**Monetize（収益化）**」＞「**設定**」＞「\*\*SDK Networks（\*\*SDK ネットワーク）」に移動します。

![SDK ネットワーク](/api/media?file=/grow/media/images/Level-Play-SDK.jpg)

* **Manage Networks** のリストから Admob を選択し、Admob **Client** **ID**、**クライアントシークレット**、**リフレッシュトークン**を入力するか、**Login with Google** オプションを選択します。

![ログイン オプション](/api/media?file=/grow/media/images/client-id.png)

![Login with Google](/api/media?file=/grow/media/images/log-in-with-google.png)

* **Save** (保存) を選択します。すると、AdMob と AdMob ネイティブが **Available Ad Networks** テーブルで有効になります。

![SDK Networks テーブル](/api/media?file=/grow/media/images/sdk-networks.png)

* 次に、AdMob で Unity LevelPlay の Mediation を実行するアプリケーションを選択します。
* Ad Networksの設定リストからAdmobを選択し、ツールの**定義**アイコンを選択します。次に、「**Interstitial**, **リワード広告** **Video** or **Banner Settings(**インタースティシャル、リワード広告ビデオ、またはバナー設定)」に**App ID**と**広告単位\*\*\*\*ID**を入力します。

![設定の定義](/api/media?file=/grow/media/images/define.png)

* Reporting API とのインテグレーションを確認します。この列では、Reporting API を通じたインテグレーションを確認し、次の 3 つの応答を返します。検証済み、失敗、無反応。インテグレーションと上で入力した情報を再確認し、**検証済み**(Verified) が表示されるまで 再試行(**Retry**) を選択します。

## ステップ 4. ビルドへの AdMob アダプタの追加##step-4.-add-the-admob-adapter-to-your-build

[Android](/grow/levelplay/sdk/android/networks/guides/google-admob.md)および[iOS](/grow/levelplay/sdk/ios/networks/guides/google-admob.md)用のネイティブ アダプターを使用して、インテグレーションを継続します。

## ステップ 5.追加ステップ##step-5.-additional-steps

以下のオプションを使用する場合は、LevelPlay SDK を初期化する**前**に `LevelPlay.setMetaData` を呼び出します。

### 子ども向け設定 – COPPA##child-directed-setting--coppa

LevelPlay メディエーションを使用すると、パブリッシャーは AdMob の子ダイレクト設定を AdMob ネットワークに直接通知できます。この特徴は、LevelPlay SDK 6.14.0 以降、AdMob アダプター 4.3.9 以降 (Android) / 4.3.11 以降 (iOS) を使用して有効化されます。

以下の構文を使用して、AdMob の **setTagForChildDirectedTreatment** にパラメーター true を設定します。

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('AdMob_TFCD', ['true'])
```

以下の構文を使用して、AdMob の **setTagForChildDirectedTreatment** にパラメーター false を設定します。

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('AdMob_TFCD', ['false'])
```

AdMob ネットワークの Child Directed 設定の詳細については、[こちら](https://developers.google.com/admob/android/targeting#child-directed_setting)を参照してください。

### 同意年齢に満たないユーザー – GDPR##users-under-the-age-of-consent--gdpr

LevelPlay メディエーションを使用すると、パブリッシャーは AdMob ネットワークに TFUA (ヨーロッパの同意年齢に満たないユーザー) リクエストのタグを付けることができます。この特徴は、LevelPlay SDK 6.14.0 以降、AdMob アダプター 4.3.9 以降 (Android) / 4.3.11 以降 (iOS) を使用して有効化されます。

以下の構文を使用して、**setTagForUnderAgeOfConsent** を true に設定します。

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('AdMob_TFUA', ['true'])
```

以下の構文を使用して、**setTagForUnderAgeOfConsent** を false に設定します。

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('AdMob_TFUA', ['false'])
```

AdMobネットワークの同意年齢に満たないユーザーの詳細については、[こちら](https://developers.google.com/admob/android/targeting#users_under_the_age_of_consent)を参照してください。

### 広告コンテンツフィルタリング##ad-content-filtering

LevelPlay メディエーションを使用すると、パブリッシャーは AdMob ネットワークと通信して、すべての広告リクエストに対する最大広告コンテンツ評価を設定できます。この特徴は、LevelPlay SDK 7.12.0 以降、AdMob アダプター 4.3.23 以降 (Android) / 4.3.28 以降 (iOS) を使用して有効化されます。

maxAdContentRating を設定するには、以下の構文を使用します。

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('AdMob_MaxContentRating', ['MAX_AD_CONTENT_RATING_G'])
```

このプロパティに指定できる値は、Google が定義したデジタルコンテンツラベル分類に基づいています。

* MAX\_AD\_CONTENT\_RATING\_G
* MAX\_AD\_CONTENT\_RATING\_PG
* MAX\_AD\_CONTENT\_RATING\_T
* MAX\_AD\_CONTENT\_RATING\_MA

AdMobネットワークでの広告コンテンツレーティングの詳細については、[こちら](https://developers.google.com/admob/android/targeting#ad_content_filtering)を参照してください。

### コンテンツ URL マッピング サポート##content-url-mapping-support

LevelPlay は、Google のアプリケーション用コンテンツマッピングをサポートしており、「Google\_コンテンツ\_マッピング」設定を使用して URL を共有できます。この特徴は、LevelPlay SDK 7.7.0 以降、AdMob アダプター 4.3.41 以降 (Android) / 4.3.51 以降 (iOS) を使用して有効化されます。Google のコンテンツマッピングの詳細については、[こちら](https://support.google.com/admob/answer/11050896)を参照してください。

単一コンテンツの URL を渡すには：

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('Google_Content_Mapping', ['https://www.example.com'])
```

複数の URL をサポートするには、同じキーを使用し、最大 4 つの URL を共有します。

```js
「Unity-levelplay-mediation」からのインポート{ LevelPlay }

LevelPlay.setMetaData('Google_Content_Mapping', [
  'https://www.example.com',
  'https://www.example2.com',
])
```

## 広告ネットワークインテグレーションの確認##verify-your-ad-network-integration

LevelPlay SDK とその他の Ad Networks のインテグレーションを検証するには、この[ドキュメント](/grow/levelplay/sdk/react/integration-helper.md)に従ってください。

## 次のステップ##next-steps

追加のメディエーション広告ネットワークを活用するには、[アダプタ](/grow/levelplay/sdk/react/mediation-networks.md)を統合し、インテグレーションガイドに従います。
