Premiers pas

借助 Google 移动广告 Unity 插件,Unity 开发者可以在 Android 和 iOS 应用上投放 Google 移动广告,而无需编写 Java 或 Objective-C 代码。该插件提供了一个用于请求广告的 C# 接口,供 Unity 项目中的 C# 脚本使用。

本指南面向希望通过 Unity 应用创收的发布商。

前提条件

  • 使用 Unity 2019.4 或更高版本
  • 在 iOS 中部署应用
    • Xcode 15.3 或更高版本
    • 定位到 iOS 12.0 或更高版本
    • CocoaPods
  • 部署到 Android 设备
    • 最低 Android API 级别为 21 或更高级别
    • 以 Android API 级别 31 或更高级别为目标平台

Android API 级别在 Project Settings > Player > Android > Other Settings > Other Settings 中设置。

导入 Mobile Ads for Unity 插件

OpenUPM-CLI

如果您已安装 OpenUPM CLI,则可以使用以下命令安装 OpenUPM 注册表:

openupm add com.google.ads.mobile

移除 .unitypackage 项插件资源

如果要从使用 .unitypackage 改为使用 OpenUPM,您必须从旧位置手动卸载资源。移除从 .unitypackage 导入的以下目录:

  • 资源/外部依赖项管理器
  • 素材资源/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

OpenUPM

  1. 依次选择 Unity 菜单选项 Edit > Project Settings > Package Manager,打开 Package Manager settings
  2. 将 OpenUPM 作为限定范围的注册表添加到 Package Manager 窗口:

    Name: OpenUPM
    URL: https://package.openupm.com
    Scopes: com.google
    
  3. 依次选择 Unity 菜单选项 Window > Package Manager,打开软件包管理器菜单

  4. 设置 Manager 范围下拉菜单,然后选择 My Registries

  5. 从软件包列表中选择 Google Mobile Ads for Unity 软件包,然后按 Install(安装)。

移除 .unitypackage 项插件资源

如果要从使用 .unitypackage 改为使用 OpenUPM,您必须从旧位置手动卸载资源。移除从 .unitypackage 导入的以下目录:

  • 资源/外部依赖项管理器
  • 素材资源/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

从 GitHub 导入

  1. 从 GitHub 下载最新的 .unitypackage 版本。
  2. 导入 .unitypackage 文件,方法是依次选择 Unity 菜单选项 Assets > Import package > Custom Package,然后导入所有项目。

包含外部依赖项

Google 移动广告 Unity 插件随 Unity Play 服务解析器库一起分发。此库旨在供需要访问 Android 专用库(例如 AAR 或 iOS CocoaPods)的任何 Unity 插件使用。它为 Unity 插件提供了声明依赖项的功能,然后依赖项会被自动解析并复制到 Unity 项目中。

请按照以下步骤确保您的项目包含所有依赖项:

Android

依次前往 Project Settings > Player > Android > Publishing Settings > Build,然后选择:

  • 自定义主 Gradle 模板
  • 自定义 Gradle 属性模板

在 Unity 编辑器中,依次选择 Assets > External Dependency Manager > Android Resolver > Resolve,让 Unity External Dependency Manager 库将声明的依赖项复制到 Unity 应用的 Assets/Plugins/Android 目录中。

iOS

无需执行额外步骤即可将 Google 移动广告 SDK 添加到 Unity 项目中。

iOS 依赖项的标识是通过 CocoaPods 完成的。CocoaPods 是构建完成后的流程步骤。

  • 使用 Unity 5.6 或更高版本时,系统会生成包含所需依赖项库的 xcworkspace。请使用生成的 xcworkspace,而不是标准 Xcode 项目。
  • 使用早期版本的 Unity 时,依赖项包含在标准 Xcode 项目中。

Google 移动广告 Unity 插件依赖项列在 Assets/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml 中。

设置您的 Ad Manager 应用 ID

在 Unity 编辑器中,从菜单中依次选择 Assets(资源)> Google Mobile Ads(Google 移动广告)> Settings(设置)

在每个字段中输入您的 Android 和 iOS 设备 Ad Manager 应用 ID

初始化 SDK

加载广告之前,请先调用 MobileAds.Initialize(),让应用初始化 Google 移动广告 SDK。此操作仅需执行一次,最好是在应用启动时执行。

以下示例展示了如何在附加到 GameObject 的脚本的 Start() 方法中调用 Initialize()

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

如果您使用的是中介功能,请等到回调发生后再加载广告,以确保初始化所有中介适配器。

选择广告格式

在 Android 或 iOS 平台上进行部署时,Unity 应用现已包含 Google 移动广告 SDK。现在,您就可以植入广告了。AdMob 提供了许多不同的广告格式,您可以选择能够带来最佳用户体验的广告格式。

横幅广告单元展示会占用应用部分布局的矩形广告。它们可以在设定的时间后自动刷新。这意味着,即使用户在应用中的同一屏幕上停留,也会不时看到新广告。这种广告格式也是最简单的广告格式。

植入横幅广告

插页式广告

插页式广告单元用于在您的应用中展示全屏广告。请在应用界面中的自然间歇点和过渡点展示插页式广告单元,例如在游戏应用的关卡结束后。

植入插页式广告

原生

在原生广告中,您可以自定义素材资源(例如标题和号召性用语)在应用中的展示方式。通过自行设置广告样式,您可以制作出自然、不突兀的广告展示效果,从而使用户体验更加丰富。

植入原生广告

已奖励

激励广告单元允许用户玩游戏、参与调查或观看视频,以赚取金币、额外的生命或积分等应用内奖励。您可以为不同的广告单元设置不同的奖励,并指定用户收到的奖励价值和奖品。

植入激励广告