Admobを使用してUnityで開発したゲームに広告を追加する方法をまとめました。
この記事ではバナー広告をUnityのプロジェクトに追加します。
https://developers.google.com/admob?hl=ja
実際にUnityで開発したゲームに広告を追加してみる
以下の記事を参考にUnityで開発したゲームに広告を追加していきます。
https://developers.google.com/admob/unity/quick-start?hl=ja
まずはAdmobアカウントを作成する
Googleのアカウントから、Admobのアカウントを作成します。
Githubから.unitypackageファイルをダウンロードする
まずは以下から.unitypackageファイルを入手します。
https://github.com/googleads/googleads-mobile-unity/releases
入手した.unitypackageファイルをUnityプロジェクトにインポートします。




以下の画面が表示されたら、Yesを押します。

つぎに以下の画面が表示されたら、Enableをクリックします。

Admobでのアプリの設定
Admobにログインしてダッシュボードから「アプリ」を選択します。

青いアプリを追加ボタンをクリックします。

必要事項に応えてアプリと紐づけたいIDを作成します。


Unity側でのIDの紐づけ
Admobで作成したアプリに紐づけたいIDをUnityのプロジェクト上で紐づけます。


Admobで広告を表示するためのスクリプトをゲームシーンに追加する
Admobの広告をゲームで表示させるためのスクリプトをゲームシーンに配置します。
まずは「Create Empty」でゲームオブジェクトをシーン上に配置します。

作成したゲームオブジェクトの名前を「AdmobManager」に変更します。


広告を表示するスクリプトを書いてオブジェクトにアタッチする
以下のスクリプトを書いて、先ほど作成したゲームオブジェクト「AdmobManager」にアタッチします。
広告を表示するスクリプト
using GoogleMobileAds.Api;
using UnityEngine;
public class AdmobManager : MonoBehaviour
{
//バナー広告
private BannerView bannerView;
private string adBannerId;
private void Start()
{
//AdMobを初期化
MobileAds.Initialize(initStatus =>
{
Debug.Log("AdMob Initialized");
});
// 広告ユニットIDをプラットフォームごとに設定
#if UNITY_ANDROID
// テスト用広告ユニットID
adBannerId = "ca-app-pub-3940256099942544/9214589741";
#elif UNITY_IPHONE
// テスト用広告ユニットID
adBannerId= "ca-app-pub-3940256099942544/2435281174";
#else
adBannerId= "unexpected_platform";
#endif
//シーン開始時にバナーを表示する
RequestBanner();
}
//バナー広告を表示する
private void RequestBanner()
{
//バナーを生成
this.bannerView = new BannerView(adBannerId, AdSize.Banner, AdPosition.Bottom);
// リクエストを生成
AdRequest request = new AdRequest();
//広告を表示
bannerView.LoadAd(request);
}
}
まずは赤枠で囲った部分で右クリックします。

次に「Create>Scripting>Empty C# Script」の順に選択します。


作成されたC#ファイルの名前を「AdmobManager」に変更します。

作成したC#ファイルを開きます。

先ほど紹介した以下のスクリプトを書いて開いたC#ファイルを保存します。
広告を表示するスクリプト
using GoogleMobileAds.Api;
using UnityEngine;
public class AdmobManager : MonoBehaviour
{
//バナー広告
private BannerView bannerView;
private string adBannerId;
private void Start()
{
//AdMobを初期化
MobileAds.Initialize(initStatus =>
{
Debug.Log("AdMob Initialized");
});
// 広告ユニットIDをプラットフォームごとに設定
#if UNITY_ANDROID
// テスト用広告ユニットID
adBannerId = "ca-app-pub-3940256099942544/9214589741";
#elif UNITY_IPHONE
// テスト用広告ユニットID
adBannerId= "ca-app-pub-3940256099942544/2435281174";
#else
adBannerId= "unexpected_platform";
#endif
//シーン開始時にバナーを表示する
RequestBanner();
}
//バナー広告を表示する
private void RequestBanner()
{
//バナーを生成
this.bannerView = new BannerView(adBannerId, AdSize.Banner, AdPosition.Bottom);
// リクエストを生成
AdRequest request = new AdRequest();
//広告を表示
bannerView.LoadAd(request);
}
}
Ctrl + Aで全選択します。

その上でCtrl + Vでコードを張り付けてコードを上書きします。上書きしたらCtrl + Sでコードを保存します。

ここまでで作成した、AdmobManager.csをゲームシーン上のオブジェクト「AdmobManager」にアタッチします。

スクリプトがアタッチされていることを確認します。

広告が表示されることのテスト
Playモードでゲームを動かしてみて広告が表示されれば作業は完了です。

赤枠で囲った上記の場所をクリックします。

クリックして広告の動作を確認するには、UIを追加してEventSystemを追加します。


これでPlayモードで確認できる広告がクリックできます。