【アプリ開発】UnityプロジェクトにAdMobを実装する【iOS】【Android】

AdMob

めちゃくちゃ簡単に実装できる広告プレースメントを使用したAdMobの実装は別記事にまとめました。
こちらの方がおすすめです。

すでにAdMobのアカウントを持っている前提です。
新しいプロジェクト作るたびにやり方を忘れるので画像付きで丁寧に手順を記載しました。
Unity 2020.3.13f1

広告ユニットを作成する(AdMob)

アプリIDの取得

AdMobのアプリを選択し、「アプリを追加」を選択します。

アプリに合わせてプラットフォームを選択します。
これから開発する未公開のアプリの場合はいいえを選択し、「次へ」をクリックします。

アプリ名を入力し、「アプリを追加」をクリックします。

アプリ名はアプリストアとリンクすると自動で正式なアプリ名に置き換わるので、自分が識別可能な名前ならなんでもOKです。

広告ユニットIDの取得

作成が完了したら続けて広告ユニットを作成します。
広告ユニットの作成」をクリックします。

作成する広告フォーマットを選択します。
ここでは例としてバナーを選択します。

広告ユニット名を入力し、「広告ユニットの作成」をクリックします。

広告ユニットの名前はユーザから見えることはないため、自分が識別可能な名前ならなんでもOKです。

また、詳細設定では広告の配信内容などを設定できますが、後から変更することが可能なのでデフォルトのままで大丈夫です。

作成が完了しました。
1のアプリIDと、2の広告ユニットIDをメモしておきます。

Android/iOSのどちらにも対応する場合は、アプリIDの作成から再度実施し、2つのアプリIDを取得します。

同じプラットフォーム内で複数の広告を使用する場合は、広告ユニットIDを必要な分だけ作成します。
この場合、1つのアプリIDに対して複数の広告ユニットIDが存在することになります。

Unityにプラグインを追加する

基本は公式のスタートガイドの記載通りに進めます。

Mobile Ads Unity プラグインをダウンロードする

プラグインをダウンロードします。
リンクの先から最新バージョンの「GoogleMobileAds-vX.X.X.unitypackage」をクリックしダウンロードします。
https://github.com/googleads/googleads-mobile-unity/releases

Unityでプロジェクトを開きます。
[Assets] > [Import Package] > [Custom Package]を選択します。
ダウンロードした GoogleMobileAdsPlugin.unitypackage ファイルを選択します。

すべてのチェックが入っていることを確認し、「Import」をクリックします。
インポート中に確認ダイアログが出た場合は内容確認して進めます。(基本はOKでよいはず)

Mobile Ads SDK を追加する

iOSの場合

[Assets] > [External Dependency Manager] > [iOS Resolver] > [Settings] を選択します。

Link frameworks statically」にチェックを入れて「OK」をクリックします。

Androidの場合

ビルド設定をAndroidに変更します。
Build Settingsを開き、Androidを選択して「Switch Platform」をクリックします。

[Assets] > [External Dependency Manager] > [Android Resolver] > [Resolve] を選択します。

Resolution Succeededが表示されれば完了です。

AdMob アプリ ID を設定する

[Assets] > [Google Mobile Ads] > [Settings] を選択します。

先ほどメモしておいたアプリIDを入力します。

これで最低限広告を使用するための準備が整いました。
ここからは広告ユニットを表示するためにスクリプトを書いていきます。

Mobile Ads SDK を初期化する

広告を読み込む前に MobileAds.Initialize() を呼び出して、アプリで Mobile Ads SDK を初期化します。
この処理は 1 回のみ必要なので、アプリの起動時など広告ロード前に行います。

MobileAds.Initialize() 実行時に広告のプリロードが行われることがあります。
アプリの配信地域に欧州経済領域(EEA)を含める場合は、実行前にユーザからの同意を取得する処理を追加するなどの対応が必要です。

よくわからない場合はアプリをリリースする際の配信地域から欧州経済領域(EEA)を除くのが無難です。

適当なGameObjectを起動Sceneに用意し、以下スクリプトを追加します。
これで起動時に初期化処理が実行されます。

using UnityEngine;
using GoogleMobileAds.Api;

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

広告種別ごとの表示

公式ドキュメントの下部に、広告種別ごとの詳細な実装方法が記載されているので、基本的にはそちらの通りに実装すればOKです。

手順の初めにメモした実際の広告ユニットIDはリリース後まで使用できません。
開発段階ではAdMobが用意しているデバッグようのテストIDを仮で使用してください。
リリース前に簡単に差し替えられるようにフラグなどで管理しておくと楽かもしれません。

コメント

タイトルとURLをコピーしました