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

> 自動設定ツールまたは手動設定を使用して、Unity LevelPlay Mediation で Google を入札者ネットワークとして設定します。

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

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

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

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

## 前提条件##prerequisites

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

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

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 を通じて 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

### Unity インテグレーション マネージャ(推奨)##unity-integration-manager-(recommended)

SDK インテグレーションが完了したら、Unity インテグレーションマネージャーを使用して AdMob Adapter をダウンロードできます。

Unity Development プラットフォームで、**LevelPlay** > **インテグレーションマネージャー** を選択します。

すでに最新バージョンのアダプタがある場合は、**アクション** ボタンが「Updated」に変わり、無効になります。

### Android (手動解決)##android-(manual-resolve)

変更を適用するには、必ず「解決」プロセスを使用してください。これにより、選択に応じて関連するアーティファクトがすべてダウンロードされます。詳細については、[こちら](/grow/levelplay/sdk/unity/package-integration.md)の手順を参照してください。 

## AdMob App ID の追加##add-admob-app-id

### Android##android

AdMob App IDをアプリケーションのAndroidマニフェストに`<application></application>`タグの子として追加します。

```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)を参照してください。

### iOS##ios

[ここ](https://developers.google.com/admob/ios/quick-start#update_your_infoplist)で説明されているように、AdMob App ID をアプリケーションの plist に追加します。または、この変更をプログラムで行うことができます。

```xml
<key>GADApplicationIdentifier</key>
<string>[APP_ID]</string>
```

`GADApplicationIdentifier` 値をステップ 3 で取得した App ID 値に置き換えます。

## ステップ 5.Info.plist の更新 (iOS の場合)##step-5.-update-info.plist-(for-ios)

AdMob SDK V7.42.0 for iOS\*\*（Adapterバージョン\*\*4.3.3 + iOS/Unity）以降、AdMobのSDKでは、パブリッシャーが[ここ](https://developers.google.com/admob/ios/quick-start#update_your_infoplist)で説明されているように、アプリケーションのplistにAdMob App IDを追加する必要があります。または、この変更をプログラムで行うことができます。

```xml
<key>GADApplicationIdentifier</key>
<string>[APP_ID]</string>
```

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

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

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

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

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

```text
 LevelPlay.SetMetaData("AdMob_TFCD","true");
```

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

```text
 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 Unity Adapter 4.3.12 以降を使用して有効化されます。

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

```cs
 LevelPlay.SetMetaData("AdMob_TFUA","true");
```

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

```cs
 LevelPlay.SetMetaData("AdMob_TFUA","false");
```

AdMob ネットワークの Child-directed 設定の詳細については、[こちら](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 を設定するには、以下の構文を使用します。

```cs
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/unity/targeting#ad_content_filtering)を参照してください。

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

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

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

```cs
LevelPlay.SetMetaData("Google_Content_Mapping","https://www.example.com");
```

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

```cs
LevelPlay.SetMetaData("Google_Content_Mapping",new[] {"https://www.example1.com","https://www.example2.com"});
```

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

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

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

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