开始使用

请选择平台: Android iOS Unity Flutter

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

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

前提条件

  • 使用 Unity 编辑器 2019.4 或更高版本
  • 如需在 iOS 上部署,需满足以下要求
    • Xcode 16.0 或更高版本
    • 以 iOS 12.0 或更高版本为目标平台
    • CocoaPods
  • 如需在 Android 上部署,需满足以下要求
    • 最低 Android API 级别为 23 或更高级别
    • 以 Android API 级别 34 或更高级别为目标平台

Android API 级别在 Project Settings(项目设置)> Player(可执行游戏文件)> Android > Other Settings(其他设置)> Other Settings(其他设置)中设置。

导入移动广告 Unity 插件

OpenUPM-CLI

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

openupm add com.google.ads.mobile

移除 .unitypackage 插件资源

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

  • Assets/ExternalDependencyManager
  • Assets/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(资源包管理器),打开资源包管理器设置
  2. 在资源包管理器窗口中,将 OpenUPM 添加为限定范围的注册表:

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

  4. 在管理器范围下拉菜单中,选择 My Registries(我的注册表)。

  5. 从资源包列表中选择 Google Mobile Ads for Unity(适用于 Unity 的 Google 移动广告)资源包,然后按 Install(安装)。

移除 .unitypackage 插件资源

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

  • Assets/ExternalDependencyManager
  • Assets/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(构建),然后选择:

  • Custom Main Gradle Template(自定义主 Gradle 模板)
  • Custom Gradle Properties Template(自定义 Gradle 属性模板)

在 Unity 编辑器中,依次选择 Assets(资源)> External Dependency Manager(外部依赖项管理器)> Android Resolver(Android 解析器)> Resolve(解析),让 Unity 外部依赖项管理器库将声明的依赖项复制到 Unity 应用的 Assets/Plugins/Android 目录中。

iOS

适用于 iOS 的 Unity 使用 CocoaPods 来标识和管理依赖项。如需了解与 iOS 依赖项相关的具体要求或问题排查步骤,请参阅 CocoaPods 文档

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

设置您的 AdMob 应用 ID

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

在相应字段中分别输入您的 Android 和 iOS AdMob 应用 ID

初始化 SDK

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

以下示例展示了如何调用 MobileAds.Initialize()

MobileAds.Initialize((InitializationStatus initstatus) =>
{
    if (initstatus == null)
    {
        Debug.LogError("Google Mobile Ads initialization failed.");
        return;
    }

    Debug.Log("Google Mobile Ads initialization complete.");

    // Google Mobile Ads events are raised off the Unity Main thread. If you need to
    // access UnityEngine objects after initialization,
    // use MobileAdsEventExecutor.ExecuteInUpdate(). For more information, see:
    // https://developers.google.com/admob/unity/global-settings#raise_ad_events_on_the_unity_main_thread
});

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

选择一种广告格式

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

横幅广告单元将展示占用应用部分版面的矩形广告。这种广告可在设定好的一段时间后自动刷新。也就是说,即使用户停留在应用中的同一个屏幕上,他们也会每隔一段时间就看到新广告。此种广告格式也是最容易植入的。

植入横幅广告

插页式广告

插页式广告单元用于在您的应用中展示全屏广告。请将这些广告单元放置在应用界面中的自然间歇点和过渡点,比如在游戏应用中过关后。

植入插页式广告

原生广告

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

植入原生广告

激励广告

激励广告单元让用户能够通过玩游戏、填写调查问卷或观看视频来获得金币、额外生命或积分等应用内奖励。您可以针对不同广告单元设置不同的奖励,并指定用户获得的奖励价值和奖品。

植入激励广告

插页式激励广告

插页式激励广告是一种激励用户的新型广告格式,采用这种格式时,您可以通过在应用中的自然过渡点自动展示的广告向用户提供奖励,如金币或额外生命。

与激励广告不同,用户无需自行选择即可观看插页式激励广告。

与激励广告中提供选择观看提示不同,插页式激励广告需要提供一个介绍画面来告知用户提供何种奖励,并让用户可以自主选择退出广告。

植入插页式激励广告

开屏广告

开屏广告会在用户打开或切换回您的应用时展示。这种广告会叠加在加载屏幕上。

植入开屏广告