全局设置

MobileAds 类为 Google 移动广告 SDK 提供了全局设置。

在 Unity 主线程上引发广告事件

Google 移动广告 SDK 在与 Unity 主线程不同的线程上引发事件。如果您实现广告事件并与 Unity 对象互动,则必须将移动广告 SDK 事件与 Unity 主线程同步。

如果您希望移动广告 SDK 为您处理此线程问题,请将 MobileAds.RaiseAdEventsOnUnityMainThread 设置为 true。这会强制 SDK 在 Unity 主线程上引发所有事件和回调。

...
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 移动广告 SDK 报告应用音量后,视频广告会遵循应用的音量设置。这样可确保用户接收到的视频广告的音量符合预期。

设备音量由音量按钮或操作系统级的音量滑块控制,决定了设备音频输出的音量。不过,应用可相对于设备音量独立调整音量水平,以定制音频体验。

您可以通过调用 SetApplicationVolume() 方法向 Google 移动广告 SDK 报告相对的应用音量。广告音量的有效值范围为 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 和当前设备音量,应用不会设为静音。

如果您的应用有特殊要求,可以将可选的 ApplicationPreferencesgad_has_consent_for_cookies 设置为零,以启用受限广告 (LTD)

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

Android 缩减大小

此 Unity 发布方式可让您启用 java 代码缩减大小。如果启用缩减大小功能,则还需要创建自定义 ProGuard 文件以保留 SDK 引用的类。

  1. 启用自定义 Proguard 文件

    依次转到 Project Settings > Player > Android > Publishing Settings > Build,然后选择:

    • 自定义 Proguard 文件
  2. 请打开 /Assets/Plugins/Android/proguard-user.txt 并添加以下内容:

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