始める

Google Mobile Ads Unity プラグインを使用すると、Unity デベロッパーは Java や Objective-C のコードを記述しなくても、Android アプリや iOS アプリに Google モバイル広告を配信できます。このプラグインには、Unity プロジェクトの C# スクリプトで使用される、広告をリクエストするための C# インターフェースが用意されています。

このガイドは、Unity アプリを収益化したいパブリッシャーを対象としています。

前提条件

  • Unity 2019.4 以降を使用する
  • iOS にデプロイするには
    • Xcode 15.3 以降
    • iOS 12.0 以降を対象としている
    • CocoaPods
  • Android にデプロイするには
    • Android API レベル 21 以上
    • ターゲット Android API レベル 31 以降

Android API レベルは、[Project Settings] > [Player] > [Android] > [Other Settings] > [Other Settings] で設定します。

Mobile Ads for Unity プラグインをインポートする

OpenUPM CLI

OpenUPM CLI がインストールされている場合は、次のコマンドを使用して OpenUPM レジストリをインストールできます。

openupm add com.google.ads.mobile

.unitypackage 個のプラグイン アセットを削除します

.unitypackage の使用から OpenUPM の使用に移行する場合は、古い場所からアセットを手動でアンインストールする必要があります。.unitypackage からインポートした次のディレクトリを削除します。

  • Assets/ExternalDependencyManager
  • アセット/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

OpenUPM

  1. Unity のメニュー オプション [Edit] > [Project Settings] > [Package Manager] を選択して、パッケージ管理システムの設定を開きます。
  2. OpenUPM をスコープ レジストリとして [Package Manager] ウィンドウに追加します。

    Name: OpenUPM
    URL: https://package.openupm.com
    Scopes: com.google
    
  3. Unity メニュー オプション [Window] > [Package Manager] を選択して、パッケージ マネージャー メニューを開きます。

  4. マネージャー スコープのプルダウンで [レジストリ] を選択します。

  5. パッケージ リストから [Google Mobile Ads for Unity] パッケージを選択し、[インストール] をクリックします。

.unitypackage 個のプラグイン アセットを削除します

.unitypackage の使用から OpenUPM の使用に移行する場合は、古い場所からアセットを手動でアンインストールする必要があります。.unitypackage からインポートした次のディレクトリを削除します。

  • Assets/ExternalDependencyManager
  • アセット/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

GitHub からインポート

  1. GitHub から最新の .unitypackage リリースをダウンロードします。
  2. .unitypackage ファイルをインポートするには、Unity メニュー オプションで [Assets] > [Import package] > [Custom Package] を選択し、すべてのアイテムをインポートします。

外部依存関係を含める

Google Mobile Ads Unity プラグインは Unity Play 開発者サービス リゾルバ ライブラリとともに配布されます。このライブラリは、AAR や iOS CocoaPods などの Android 固有のライブラリにアクセスする必要がある Unity プラグインで使用することを前提としています。Unity プラグインには依存関係を宣言する機能があり、依存関係は自動的に解決されて Unity プロジェクトにコピーされます。

以下の手順に沿って、プロジェクトにすべての依存関係が含まれるようにします。

Android

[Project Settings] > [Player] > [Android] > [Publishing Settings] > [Build] に移動し、次のように選択します。

  • カスタムのメイン Gradle テンプレート
  • カスタム Gradle プロパティ テンプレート

Unity エディタで [Assets] > [External Dependency Manager] > [Android Resolver] > [Resolve] を選択すると、Unity External Dependency Manager ライブラリによって、宣言された依存関係が Unity アプリの Assets/Plugins/Android ディレクトリにコピーされます。

iOS

Google Mobile Ads SDK を Unity プロジェクトに含めるために、追加の手順は必要ありません。

iOS の依存関係は CocoaPods を使用して識別されます。CocoaPods は、ビルド後のプロセスのステップとして実行されます。

  • Unity 5.6 以降を使用している場合は、必要な依存関係ライブラリを含む xcworkspace が生成されます。標準の Xcode プロジェクトではなく、生成された xcworkspace を使用します。
  • 以前のバージョンの Unity を使用している場合、依存関係は標準の Xcode プロジェクトに含まれています。

Google Mobile Ads Unity プラグインの依存関係は Assets/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml にリストされています。

アプリ ID の AdMob 設定

Unity エディタで、メニューから [Assets] > [Google Mobile Ads] > [Settings] を選択します。

Android と iOS の AdMob アプリ ID を各フィールドに入力します。

SDK を初期化する

広告を読み込む前に、MobileAds.Initialize() を呼び出して、アプリで Google Mobile Ads SDK を初期化します。この処理は 1 回だけ行います(アプリの起動時に行うのが理想的です)。

GameObject に添付されたスクリプトの Start() メソッド内で Initialize() を呼び出す方法の例を次に示します。

...
using GoogleMobileAds.Api;
...
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // Initialize the Google Mobile Ads SDK.
        MobileAds.Initialize(initStatus => { });
    }
}

メディエーションを使用している場合は、すべてのメディエーション アダプタが初期化されるように、コールバックが発生するまで待ってから広告を読み込みます。

広告フォーマットの選択

Android または iOS プラットフォームにデプロイするときに、Unity アプリに Google Mobile Ads SDK が含まれるようになりました。これで、広告を実装できるようになりました。AdMob にはさまざまな広告フォーマットが用意されており、ユーザー エクスペリエンスに最適なものを選択できます。

バナー広告ユニットには、アプリのレイアウトの一部を占める形で長方形の広告が表示されます。一定時間の経過後に自動更新される。つまり、ユーザーはアプリの同じ画面にとどまっている場合でも、新しい広告が定期的に表示されます。これは実装が最もシンプルな広告フォーマットでもあります。

バナー広告を実装する

インタースティシャル

インタースティシャル広告ユニットでは、アプリに全画面広告が表示されます。ゲームアプリのレベルクリア後など、アプリのインターフェースの自然な中断や遷移時に配置します。

インタースティシャル広告を実装する

ネイティブ

ネイティブ広告は、広告見出しや行動を促すフレーズなどのアセットをアプリに表示する方法をカスタマイズできる広告です。広告のスタイルをご自身で設定することで、自然で目立たない広告プレゼンテーションを作成して、豊かなユーザー エクスペリエンスを向上させることができます。

ネイティブ広告を実装する

特典

リワード広告ユニットを使用すると、ユーザーはゲームをプレイしたり、アンケートに回答したり、動画を視聴したりして、コイン、追加ライフ、ポイントなどのアプリ内報酬を獲得できます。広告ユニットごとに異なる報酬を設定し、ユーザーが受け取る報酬の値とアイテムを指定できます。

リワード広告を実装する

リワード インタースティシャル

リワード インタースティシャルは、アプリの画面が変わる自然なタイミングで自動的に表示される広告に対して、コインや追加ライフなどの報酬を提供できる新しいタイプのインセンティブ広告フォーマットです。

リワード広告とは異なり、ユーザーはリワード インタースティシャル広告の表示をオプトインする必要はありません。

リワード インタースティシャル広告では、リワード広告のオプトイン メッセージの代わりに、報酬を通知するイントロ画面を用意し、ユーザーが必要に応じてオプトアウトできるオプションを提示する必要があります。

リワード インタースティシャル広告を実装する

アプリ起動

アプリ起動時広告は、ユーザーがアプリを開いたとき、またはアプリに戻ったときに表示される広告フォーマットです。広告は読み込み画面に重ねて表示されます。

アプリ起動時広告を実装する