
Unity Google AdMob 導入解説!
リワード広告の設定方法について
最初に
アプリ開発を続けていくうえで、「収益化」は避けては通れない重要な要素の一つです。
Google AdMobは、Unityで広告を実装する際に、よく使用されているプラットフォームとなります。
この記事では、そんなAdMobを使ったUnityでの広告表示の方法について解説します。
今回は、Unity上でのAdMobの実装について解説していきます。
投稿時のバージョン
Unity 6000.0.23f1
AdMob 9.2.1
目次
Google AdMobの初期化
広告を表示するには、まずAdMobを初期化する必要があります。
①必要なスクリプトを作成
Unityのプロジェクトビューで新しいC#スクリプトを作成し、名前を「AdMobManager」にします。

②初期化コードを記入
AdMobを初期化するコードを記入します。
using GoogleMobileAds.Api;
public class AdMobManager : MonoBehaviour
{
void Start()
{
// AdMobの初期化
MobileAds.Initialize(initStatus =>
{
Debug.Log("AdMob Initialized");
});
}
}
③スクリプトをシーンに適用
空のGameObjectを作成し、名前をAdMobManagerに変更します。
その後、作成したスクリプトをアタッチします。

リワード広告の実装
次に、リワード広告を表示するためのコードを記述します。
①広告ユニットIDの取得
AdMobの管理画面から、作成したバナー広告のユニットIDをコピーします。
テスト時はテスト用広告IDを使用してください。
テスト広告ID
Android: ca-app-pub-3940256099942544/5224354917
iOS: ca-app-pub-3940256099942544/1712485313
// リワード広告
private RewardedAd rewardedAd;
private string adRewardedId;
// リワード広告インスタンス
private RewardedAd rewardedAd;
// リワード広告ユニットID
private string adUnitId;
private void Start()
{
// AdMobの初期化
MobileAds.Initialize(initStatus =>
{
Debug.Log("AdMob Initialized");
});
// 広告ユニットIDをプラットフォームごとに設定
#if UNITY_ANDROID
adUnitId = "ca-app-pub-3940256099942544/5224354917"; // Androidテスト用広告ユニットID
#elif UNITY_IPHONE
adUnitId = "ca-app-pub-3940256099942544/1712485313"; // iOSテスト用広告ユニットID
#else
adUnitId = "unexpected_platform";
#endif
LoadRewardedAd();
}
②広告のロードと表示
using GoogleMobileAds.Api;
using System;
using UnityEngine;
public class AdMobManager : MonoBehaviour
{
// リワード広告インスタンス
private RewardedAd rewardedAd;
// リワード広告ユニットID
private string adUnitId;
private void Start()
{
// AdMobの初期化
MobileAds.Initialize(initStatus =>
{
Debug.Log("AdMob Initialized");
});
// 広告ユニットIDをプラットフォームごとに設定
#if UNITY_ANDROID
adUnitId = "ca-app-pub-3940256099942544/5224354917"; // Androidテスト用広告ユニットID
#elif UNITY_IPHONE
adUnitId = "ca-app-pub-3940256099942544/1712485313"; // iOSテスト用広告ユニットID
#else
adUnitId = "unexpected_platform";
#endif
LoadRewardedAd();
}
public void LoadRewardedAd()
{
//広告が残っていたら削除
if (rewardedAd != null)
{
rewardedAd.Destroy();
rewardedAd = null;
}
var adRequest = new AdRequest();
//広告をロード
RewardedAd.Load(adUnitId, adRequest,
(RewardedAd ad, LoadAdError error) =>
{
if (error != null || ad == null)
{
Debug.LogError("Rewarded ad failed to load an ad " + "with error : " + error);
return;
}
Debug.Log("Rewarded ad loaded with response : " + ad.GetResponseInfo());
rewardedAd = ad;
});
}
//リワード広告を再生
public void ShowRewardedAd()
{
const string rewardMsg =
"Rewarded ad rewarded the user. Type: {0}, amount: {1}.";
if (rewardedAd != null && rewardedAd.CanShowAd())
{
rewardedAd.Show((Reward reward) =>
{
//ここに報酬を与える処理を追加
Debug.Log(String.Format(rewardMsg, reward.Type, reward.Amount));
});
}
}
}
③広告を再生する関数をボタンから呼び出し
Unityでボタンを追加し、ShowRewardedAd()を呼び出してください。

④広告を再生
再生して、以下のように表示されていたら成功です!

最後に
これでAdMobを使用した、Unityへのリワード広告の実装が完了しました。
簡単に実装できるので、広告表示を考えている人はぜひ試してみてください!
参考資料
広告をテストする方法 - Google AdMob ヘルプ
デモ広告、テストデバイス、広告インスペクタを使用して、広告が適切に動作しているかどうかをテストします。#testads 広告が適切に実装されているかテストすることは、アプリの開発において重要な意味を持ちます。ただし、テスト目的であっても、サ...
コメント