全般設定

プラットフォームを選択: Android iOS Unity

MobileAds クラスは、Google Mobile Ads SDK のグローバル設定を提供します。

Unity のメインスレッドで広告イベントを発生させる

Google Mobile Ads SDK は、Unity のメインスレッドとは異なるスレッドでイベントを発生させます。広告イベントを実装して Unity オブジェクトを操作する場合は、Mobile Ads SDK イベントを Unity メインスレッドと同期する必要があります。

広告イベントを Unity メインスレッドと同期するには、手動で行うか、Google Mobile Ads SDK に同期を任せて自動で行います。

広告イベントを手動で同期する

広告イベントを同期するには、メインスレッドで ExecuteInUpdate メソッドを手動で使用します。RaiseAdEventsOnUnityMainThread プロパティが無効になっていて、UnityEngine オブジェクトを操作する場合は、このメソッドを使用する必要があります。

次の例では、バックグラウンド スレッドをログに記録し、UnityEngine オブジェクトを操作するアクションを実行します。

rewardedAd.OnAdPaid += (AdValue value) =>
{
    // Log the ad value immediately.
    UnityEngine.Debug.Log($"Received ad value of {value.Value} {value.CurrencyCode}.");

    MobileAdsEventExecutor.ExecuteInUpdate(() =>
    {
        // Interact with UnityEngine objects here.
    });
};

広告イベントでの同期を自動化する

Google Mobile Ads SDK で広告イベントを同期するには、MobileAds.RaiseAdEventsOnUnityMainThread プロパティを true に設定します。

...
using GoogleMobileAds.Api;
...
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // When true all events raised by GoogleMobileAds will be raised
        // on the Unity main thread. The default value is false.
        MobileAds.RaiseAdEventsOnUnityMainThread = true;
    }
}

動画広告の音量調整

アプリに独自の音量調整機能(音楽や効果音のカスタム音量設定など)が備わっている場合、アプリの音量設定を Google Mobile Ads SDK に開示すれば、動画広告の音量にもアプリ側の音量設定を反映できます。これにより、動画広告をユーザーの想定どおりの音量で視聴してもらうことが可能になります。

デバイスの音声出力の大きさは、デバイスのボリューム(ボリューム ボタンや OS レベルのボリューム スライダーで制御)で決まります。ただし、音声の聞こえ方を独自にコントロールするために、デバイスの設定に対する相対的な音量レベルをアプリ側で独自に調節できます。

アプリ側で設定されている相対音量を Google Mobile Ads SDK に伝えるには、広告を読み込む前に SetApplicationVolume() メソッドを呼び出します。広告の音量設定値の有効範囲は、0.0(無音)から 1.0(デバイスの現在の音量)までです。次の例は、相対的なアプリのボリュームを SDK にレポートする方法を示します。

// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);

アプリ側で音声がミュートされたことを SDK に伝えるには、広告を読み込む前に SetApplicationMuted() メソッドを呼び出します。

// Set app to be muted.
MobileAds.SetApplicationMuted(true);

アプリ側の音量は、デフォルトでは 1(デバイスの現在の音量)に設定されており、アプリはミュートされていない状態です。

アプリに特別な要件がある場合は、オプションの ApplicationPreferences キー gad_has_consent_for_cookies をゼロに設定して、制限付き広告(LTD)を有効にできます。

// Enable limited ads (LTD)
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);

Android の縮小化

この Unity パブリッシュ オプションを使用すると、Java コードの最小化を有効にできます。縮小を有効にする場合は、SDK で参照されるクラスを保持するためのカスタム ProGuard ファイルも作成する必要があります。

  1. カスタム Proguard ファイルを有効にする

    [Project Settings](プロジェクト設定)> [Player](プレーヤー)> [Android] > [Publishing Settings](公開設定)> [Build](ビルド)に移動し、以下を選択します。

    • カスタム Proguard ファイル
  2. /Assets/Plugins/Android/proguard-user.txt を開き、次のコードを追加します。

-keep class com.google.** { public *; }

クラッシュ レポートを無効にする

Google Mobile Ads SDK は、デバッグと分析を目的としてクラッシュ レポートを収集します。次のコードを使用して、このクラッシュ レポートを無効にできます。以降のセクションでは、Android と iOS でクラッシュ レポートを無効にする方法について説明します。

Android

アプリの AndroidManifest.xml ファイルに、DISABLE_CRASH_REPORTINGtrue に設定した <meta-data> タグを追加します。

<manifest>
   <application>
       <meta-data
           android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
           android:value="true" />
   </application>
</manifest>

iOS

DisableSDKCrashReporting メソッドを呼び出して、iOS でクラッシュ レポートを無効にします。

void Awake() {
  MobileAds.DisableSDKCrashReporting();
}

Unity プラグインのバージョンを取得する

Unity SDK のバージョンを取得するには、次のコマンドを実行します。

// Get the unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());

プラットフォームのバージョンを取得する

Unity 向け Google Mobile Ads SDK は、Android と iOS のプラットフォーム SDK に依存しています。プラットフォーム SDK のバージョンを取得するには、次のコマンドを実行します。

// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());