# Google入札インテグレーション

> Google Ad Manager アカウントを設定し、入札プロセスを設定し、プロジェクトに必要なアダプタを追加することで、Google Bidding を Unity LevelPlay と統合できます。

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

このガイドでは、Unity LevelPlay Mediation で Google を入札者ネットワークとして設定する手順をステップごとに説明します。

> **Note:**
>
> Google入札者様は、以下のステップ1を完了した後に自動設定ツールを使用できます。自動設定ツールはアプリケーションと入札者の配置を作成し、AdMobから配置の詳細を取得するため、LevelPlayとAdMobのプラットフォームを切り替える必要はありません。または、設定全体を手動で完了することもできます。

> **Note:**
>
> このメディエーションネットワークのアダプタ変更ログを表示するには、[Android 向けメディエーションネットワーク](/grow/levelplay/sdk/android/mediation-networks.md.md#integrate-network-adapters) を参照してください。

## 前提条件##prerequisites

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

  **Integration guides:**

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

* Google 入札は、LevelPlay SDK バージョン 7.2.7 以降でサポートされています。

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

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

> **Note:**
>
> ステップ1を完了したら、ステップ3にスキップして自動入札設定ツールを使用して、Unity LevelPlayでGoogle入札を開始して実行できます。手動設定を続行する場合は、ステップ 2 に進みます。

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

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

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

* AdMob アカウントにログインします。ダッシュボードで、**Apps**、**Add application**を選択します。
* モーダルが表示されます。ここで、アプリケーションの検索、アプリケーションの手動追加、既存のアプリケーションを選択して収益化できます。ironsource アカウントと同様に、プラットフォームごとに一意の AdMob アプリケーションが必要です (iOS + Android)。
* 広告単位形式として「interstitial」、「rewarded」、または「banners」を選択し、関連する詳細を入力します。
* **Interstitial (インタースティシャル)**
  * **広告ユニット名**: 広告単位に直感的な名前を付け、配信する広告単位として認識しやすくします。
  * **パートナー入札**:チェックボックスをオンにして、別のメディエーションプラットフォームで入札を使用していることを示します。
* **リワード広告**
  * **広告ユニット名**: 広告単位に直感的な名前を付け、配信する広告単位として認識しやすくします。
  * **パートナー入札**:チェックボックスをオンにして、別のメディエーションプラットフォームで入札を使用していることを示します。
*  **バナー**
  * **広告ユニット名**: 広告単位に直感的な名前を付け、配信する広告単位として認識しやすくします。
  * **パートナー入札**:チェックボックスをオンにして、別のメディエーションプラットフォームで入札を使用していることを示します。

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

LevelPlay で Meta オーディエンス ネットワーク の設定を行うには 2 つの方法があります。

* **自動設定** - Googleアカウントにログインして、新しいアプリケーションと入札プレースメントを自動的に作成し、Google AdMobプラットフォームから必要な設定をすべて取得します。
* **手動** - LevelPlay プラットフォームと Google AdMob プラットフォーム間で必要な情報を取得して入力します。

### 自動設定

* LevelPlay アカウントにログインし、**LevelPlay サイドナビバー**> **設定**> **Networks** に移動します。
* 使用可能な広告ネットワークのリストから**Google AdMob**を選択します。
* **Login with Google**を選択し、承認済みのGoogleアカウントでログインします。
* すでにログインしている場合は、リセット ログインを選択します\*\*(新しいログイン\*\*が必要です)
* ログイン後、Google自動設定入札者をトグル
* **Instancesページ**に移動し、Googleのインタースティシャル広告、リワード広告、バナー広告を実行するアプリケーションを選択します。 
* 「\*\*Add Bidder(\*\*入札を追加)」を選択すると、AdMobプラットフォームに新しいアプリケーションと入札プレースメントが自動的に作成され、広告単位IDがインポートされます。App IDがすでにアプリケーションにアタッチされている場合、広告単位IDパラメーター値を指定せずに配置が1つ以上あれば、自動設定ツールを使用できます。この場合、新しい入札配置が作成されます。
* **Save (保存**) を選択して、すべての設定を承認および承認します。保存せずにモジュールを閉じると、データを LevelPlay プラットフォームにインポートせずに AdMob プラットフォームにアセットが作成されます。

Google 入札者インスタンスの状態は、広告形式では ironsource Ads 入札者の状態と同じです。例えば、リワード広告にironsource Adsの入札者を使用していない場合、Googleネットワークでは自動的にアクティブになりません。

### 手動設定

1. LevelPlay アカウントにログインし、**LevelPlay サイドナビバー**> **設定**> **Networks** に移動します。
2. 使用可能な広告ネットワークのリストから**Google AdMob**を選択します。
3. LevelPlay ネットワーク設定モジュールに以下のデータを入力して、AdMob が LevelPlay SDK を統合できるようにします。

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

これらの AdMob パラメータを LevelPlay に統合するには、以下の手順を参照してください。

1. **App ID**

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

2. **Ad Unit ID**

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

3. **Client ID  and Client Secret**

   1. **クライアント ID とクライアントシークレット** を取得するには、[Google の API マネージャー](https://console.cloud.google.com/apis) にアクセスしてください。
   2. ページの左上にある「**API Project**」ドロップダウンを選択し、「**Create a project**」を選択するか、このアプリケーション用にすでに作成したプロジェクトを選択します。この目的で新しいプロジェクトを作成する場合は、表示されるダイアログボックスに **プロジェクト名**、**課金アカウント**、**場所** を入力し、**Create** を選択します。
   3. 左のサイドバーで「**Credentials**」を選択し、「**OAuth consent 画面**」タブを選択します。次に、「**Product Name**」を入力し、「**Save**」を選択します。
   4. 左側のサイドバーで、「**ダッシュボード**」を選択し、「**Enable APIs and services**」に移動します。
      5.次に、**AdMob API** を有効にします。
      6.左のサイドバーで「**Credentials**」タブを選択します。**Create Credentials** ドロップダウンを選択し、**OAuth client ID** を選択します。
   5. **ウェブ アプリケーション** を選択し、アプリケーションの名前を入力します。下のフィールドには、少なくとも 1 つの **Authorized リダイレクト URI** に [https://developers.google.com/oauthplayground](https://developers.google.com/oauthplayground) を入力する必要があります。例を次に示します。

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

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

4. **Refresh Token**

   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. 右上隅にある設定アイコンを選択します。「**Force 承認 プロンプト**」というラベルのボックスのチェックを外し、「**Use your own OAuth credentials**」をチェックします。**Client ID** と **クライアントシークレット** を入力。
   3. 次に、**ステップ 1:& Authorize APIs** を選択し、**[https://www.googleapis.com/auth/admob.report](https://www.googleapis.com/auth/admob.report)** と入力し、**Authorize APIs** を選択します。
   4. AdMob データへのプロジェクトアクセスの許可
      5.その後、ステップ 1 から承認コードを受け取り、**Exchange 承認 コード for tokens** ボタンを選択できるようになります。その後、**リフレッシュトークン** とアクセストークンが取得されます。

4) これらのパラメータをすべて設定したら、LevelPlay の Google AdMob アカウント設定に入力します。
5) 次に、Instances (インスタンス) ページに移動します。Unity LevelPlay の Mediation を Google 入札で実行するページ上部のアプリケーションを選択します。
6) Ad Networksの設定リストからGoogleを選択し、ツールの**定義**アイコンを選択します。次に、「**Interstitial**, **リワード広告** **Video** or **Banner Settings(**インタースティシャル、リワード広告ビデオ、またはバナー設定)」に**App ID**と**広告単位\*\*\*\*ID**を入力します。

## ステップ 4. Admob アダプタをビルドに追加する##step-4.-add-the-admob-adapter-to-your-build

V17.0.0 **(Adapter バージョン** 4.3.1 以降) では、AdMob の SDK ではパブリッシャーが AdMob App ID を`<application/>` タグの子としてアプリケーションの AndroidManifest に追加する必要があります。

```xml
<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" 
           android:value="[ADMOB_APP_ID]"/>
```

"ADMOB\_アプリケーション\_ID" をステップ 3 で取得した App ID 値に置き換えます。"

1. allprojects > repositories ブロック内に以下の行があることを確認します。

   ```groovy
   allprojects {
       repositories {
          flatDir {
              dirs 'libs'
          }
          google()
       }
   }
   ```

2. dependencies ブロックに以下の依存関係を追加します。

   ```groovy
   dependencies {
      implementation 'com.unity3d.ads-mediation:admob-adapter:5.11.0'
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.2.1'
   }
   ```

### Android##android

LevelPlay SDK は Gradle の依存関係と手動ダウンロードメカニズムの両方をサポートします。

#### Admob アダプターを Gradle と統合するには##to-integrate-the-admob-adapter-with-gradle

1. 以下の Maven URL がアプリケーションモジュールの ビルド.gradle スクリプトに存在することを確認します (すべてのアダプターに対して 1 回のみ表示されます)。

   ```groovy
   repositories {
       google()
       mavenCentral()
   }

   ```

2. アダプターの Maven 名をアプリケーションモジュールの ビルド.gradle スクリプトに追加します。

   ```groovy
   dependencies {
      implementation 'com.unity3d.ads-mediation:admob-adapter:5.11.0'
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.2.1'
   }
   ```

#### 手動ダウンロードで Admob アダプターを統合するには##to-integrate-the-admob-adapter-through-manual-download

1. \*\*Admob Adapter のダウンロード:\*\*Admob Adapter をビルドに追加します。最新の Admob Adapter は[ここ](/grow/levelplay/sdk/android/mediation-networks.md)にあります。**重要!**Admob アダプターに Admob SDK が含まれていない。Admob SDK を直接追加**する必要**があります。

2. \*\*Admob Adapter をプロジェクトに追加します。\*\*Adapter をダウンロードしたら、Admob Adapter jar を Android プロジェクトの **libs** フォルダーにドロップします。

   ![アダプタ JAR ファイルを Android プロジェクトの libs フォルダーにドロップします。](/api/media?file=/grow/media/images/Supersonic-Mediation-Drop-Libs.png)

3. Gradle ビルドファイルの **dependencies セクション**の下に以下を追加するようにしてください。
   ```groovy
   dependencies {
      implementation 'com.unity3d.ads-mediation:admob-adapter:5.11.0'
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.2.1'
   }
   ```

## ステップ 5.AndroidManifest.xml 更新##step-5.-update-androidmanifest.xml

LevelPlay Android SDK Version 6.17.0(AdMob Android アダプタ バージョン 4.3.10 以降)では、AdMob アダプタは AAR としてリリースされます。JAR インテグレーションを維持する場合は、マニフェストを追加します。

**マニフェスト権限:**

```xml
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
```

\*\*マニフェストアクティビティ:\*\*以下のアクティビティーを **manifestAdditions** の `<application>` タグ内に追加します。

```xml
<activity android:name="com.google.android.gms.ads.AdActivity"
Android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" Android:theme="@Android:style/Theme.Translucent" />
```

V17.0.0 **(Adapter バージョン** 4.3.1 以降) では、AdMob の SDK ではパブリッシャーが AdMob App ID を`<application></application>` タグの子としてアプリケーションの AndroidManifest に追加する必要があります。

```xml
<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID"
           android:value="[ADMOB_APP_ID]"/>
```

`[ADMOB_APP_ID]`をステップ 3 で取得した App ID 値に置き換えます。これを行わないと、AdMob の SDK に起因するクラッシュが発生します。 詳細については、[AdMob のガイド](https://developers.google.com/admob/android/quick-start#update_your_androidmanifestxml)を参照してください。

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

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

Unity LevelPlay メディエーションを使用すると、パブリッシャーは AdMob の子指向設定を AdMob ネットワークに直接通知できます。この特徴は、LevelPlay SDK 6.14.0 以降、AdMob Android Adapter 4.3.9 以降を使用して有効化されます。

以下の構文を使用して、AdMob の **setTagForChildDirectedTreatment** にパラメーター TAG\_FOR\_CHILD\_DIRECTED\_TREATMENT\_true を設定します。

```java
 LevelPlay.setMetaData("AdMob_TFCD","true");
```

以下の構文を使用して、AdMob の **setTagForChildDirectedTreatment** にパラメーター TAG\_FOR\_CHILD\_DIRECTED\_TREATMENT\_FALSE を設定します。

```java
 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

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

以下の構文を使用して、タグ\_FOR\_under\_AGE\_OF\_CONSENT\_true で **setTagForUnderAgeOfConsent** を設定します。

```java
 LevelPlay.setMetaData("AdMob_TFUA","true");
```

以下の構文を使用して、タグ\_FOR\_under\_AGE\_OF\_CONSENT\_false で **setTagForUnderAgeOfConsent** を設定します。

```java
 LevelPlay.setMetaData("AdMob_TFUA","false");
```

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

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

Unity LevelPlay メディエーションを使用すると、パブリッシャーは AdMob ネットワークと通信できます。すべての広告リクエストに対する最大広告コンテンツレーティングです。この特徴は、LevelPlay SDK 7.12.0 以降、AdMob Android Adapter 4.3.23 以降を使用して有効化されます。

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

```java
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 ネットワークの Ad Content Rating プロパティの詳細については、[こちら](https://developers.google.com/admob/android/targeting#ad_content_filtering)を参照してください。

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

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

単一コンテンツの URL を渡すには、以下の構文を使用します。

```java
LevelPlay.setMetaData("Google_Content_Mapping","https://www.example.com");
```

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

```java
LevelPlay.setMetaData("Google_Content_Mapping",["https://www.example1.com","https://www.example2.com"]);
```

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

LevelPlay SDK を使用すると、メディエーションのインテグレーションが正常に完了したことを簡単に確認できます。LevelPlay とその他の Ad Networks のインテグレーションを検証するには、この[ドキュメント](/grow/levelplay/sdk/android/integration-helper.md)を参照してください。

これでアプリケーション内で Admob Ads を配信できるようになりました。

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

Unity LevelPlay を通じて追加の広告ネットワークを活用するには、アダプタを統合し、インテグレーションガイドに従います。

**Platform adapters:**

* [Unity](/grow/levelplay/sdk/unity/mediation-networks.md)
* [Android](/grow/levelplay/sdk/android/mediation-networks.md)
* [iOS](/grow/levelplay/sdk/ios/mediation-networks.md)
* [Adobe AIR](/grow/levelplay/sdk/adobe/mediation-networks.md)
* [Flutter](/grow/levelplay/sdk/flutter/mediation-networks.md)
* [React ネイティブ](/grow/levelplay/sdk/react/mediation-networks.md)
