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 以降をターゲットとする
- 推奨: AdMob アカウントを作成し、Android アプリまたは iOS アプリを登録します。
Android API レベルは、[Project Settings] > [Player] > [Android] > [Other Settings] > [Other Settings] で設定します。
Mobile Ads for Unity プラグインをインポートする
Unity 向け Google Mobile Ads プラグインは、.unitypackage
として GitHub と OpenUPM のリポジトリで配布されています。
GitHub からインポート
- GitHub から最新の
.unitypackage
リリースをダウンロードします。 - Unity メニュー オプションの [Assets] > [Import package] > [Custom Package] を選択し、すべてのアイテムをインポートして、
.unitypackage
ファイルをインポートします。
OpenUPM でインポート
OpenUPM CLI を使用して OpenUPM レジストリをインストールする
OpenUPM CLI がインストールされている場合は、次のコマンドを使用して OpenUPM レジストリをインストールできます。
openupm add com.google.ads.mobile
OpenUPM レジストリを手動でインストールする
- Unity のメニュー オプション [Edit] > [Project Settings] > [Package Manager] を選択して、パッケージ マネージャーの設定を開きます。
OpenUPM をスコープ レジストリとして [Package Manager] ウィンドウに追加します。
Name: OpenUPM URL: https://package.openupm.com Scopes: com.google
Google Mobile Ads for Unity パッケージをインストールする
- Unity のメニュー オプション [Window] > [Package Manager] を選択して、パッケージ マネージャー メニューを開きます。
[マネージャー スコープ] プルダウンで [マイ レジストリ] を選択します。
パッケージ リストから Google Mobile Ads for Unity パッケージを選択し、[インストール] をクリックします。
古いインポートを削除する
次のディレクトリを削除して、.unitypackage
インポートを削除します。
Assets/ExternalDependencyManager
Assets/GoogleMobileAds
Assets/Plugins/Android/googlemobileads-unity.aar
Assets/Plugins/Android/GoogleMobileAdsPlugin
Assets/Plugins/iOS/GADUAdNetworkExtras
Assets/Plugins/iOS/unity-plugin-library.a
外部依存関係を含める
Google Mobile Ads Unity プラグインは、Unity Play Services Resolver ライブラリと一緒に配布されています。このライブラリは、AAR や iOS CocoaPods などの Android 固有のライブラリにアクセスする必要がある Unity プラグインで使用するためのものです。Unity プラグインで依存関係を宣言すると、その依存関係が自動的に解決されて Unity プロジェクトにコピーされます。
プロジェクトにすべての依存関係が含まれていることを確認する手順は次のとおりです。
Android
[Project Settings] > [Player] > [Android] > [Publishing Settings] > [Build] に移動し、次のいずれかを選択します。
- カスタム Main 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](Google モバイル広告)> [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 にはさまざまな広告フォーマットが用意されており、最適なユーザー エクスペリエンスに最適なものを選択できます。
バナー
バナー広告ユニットは、アプリのレイアウトの一部を占有する長方形の広告を表示します。設定した期間後に自動的に更新されます。つまり、ユーザーはアプリの同じ画面にとどまっている場合でも、新しい広告が定期的に表示されます。また、最も簡単に実装できる広告フォーマットでもあります。
インタースティシャル
インタースティシャル広告ユニットは、アプリ内に全画面広告を表示します。ゲームアプリでレベルクリアした後など、アプリのインターフェースの自然な切れ目や画面の切り替え時に配置します。
ネイティブ
ネイティブ広告は、広告見出しや行動を促すフレーズなどのアセットをアプリに表示する方法をカスタマイズできる広告です。広告のスタイルを自分で設定することで、自然で邪魔にならない広告を表示して、ユーザー エクスペリエンスを向上させることができます。
特典
リワード広告ユニットを使用すると、ユーザーはゲームをプレイしたり、アンケートに回答したり、動画を視聴したりして、コイン、追加ライフ、ポイントなどのアプリ内報酬を獲得できます。広告ユニットごとに異なる報酬を設定し、報酬の値やユーザーが受け取るアイテムを指定できます。
リワード インタースティシャル
リワード インタースティシャルは、新しいタイプのインセンティブ広告フォーマットで、アプリの画面が切り替わる自然なタイミングで自動的に表示される広告に対して、コインや追加ライフなどの報酬を提供できます。
リワード広告とは異なり、ユーザーはリワード インタースティシャル広告を表示するためにオプトインする必要はありません。
リワード広告のオプトイン メッセージの代わりに、リワード インタースティシャルでは、報酬を発表し、ユーザーがオプトアウトする機会を提供するイントロ画面が必要です。
アプリ起動
アプリ起動時広告は、ユーザーがアプリを開いたとき、またはアプリに戻ったときに表示される広告フォーマットで、読み込み画面に重なって表示されます。