将 nend 与中介集成

本指南介绍了如何使用 Google 移动广告 SDK 通过中介从 nend 加载和展示广告,其中包括广告瀑布流集成。它介绍了如何向广告单元的中介配置添加 nend,以及如何将 nend SDK 和适配器集成到Android 应用中。

Nend 的信息中心界面使用日语文本作为标签、按钮和说明,下方显示的屏幕截图尚未翻译。在本指南中,标签和按钮用其对应的英语进行称呼。例如,“网址 すーム”是“网址架构”等。

支持的集成和广告格式

适用于 Nend 的 Ad Manager 中介适配器具有以下功能:

集成
出价
瀑布
表现形式
横幅
插页式广告
已奖励
原生

要求

  • Android API 级别 19 或更高级别
  • 最新版 Google 移动广告 SDK

  • 完成中介 入门指南

第 1 步:在 Nend 界面中设置配置

注册登录您的 nend 帐号。

要将应用添加到 Nend 信息中心,请先点击展示位置管理标签页,然后选择网站/应用。点击添加应用按钮以将应用添加到 Nend。

创建应用

输入应用的名称,并选择您的应用平台作为应用类型。输入网址,然后检查您的应用是否已在相应的应用商店中上架

(如果您的应用尚未发布,请参阅 nend 未发布应用常见问题解答)。为您的应用选择一个类别,并在完成后点击创建

创建应用后,该应用会显示在信息中心上。

创建展示位置

注册该应用后,您就可以继续创建展示位置了。要为横幅广告创建展示位置,请转到展示位置管理标签页,然后点击展示位置。然后点击创建新的展示位置按钮。

从下拉菜单中选择您的应用。然后,按照下列与您的首选广告格式对应的说明进行操作。

广告类型选择静态图片,并为广告资源类型选择横幅。完成后,输入展示位置名称,填写广告资源简介,选择一种广告资源格式,最后选择广告资源尺寸。完成后,点击创建按钮以创建您的展示位置。

插页式广告

广告类型选择静态图片,并为广告资源类型选择插页式。完成后,输入展示位置名称,填写广告资源简介,然后从下拉列表中选择广告展示频率。完成后,点击创建按钮以创建您的展示位置。

对于插页式视频广告,请为广告类型选择视频,并为广告资源类型选择插页式。完成后,输入展示位置名称,填写广告资源简介,然后从下拉列表中选择合适的类别。完成后,点击创建按钮以创建您的展示位置。

已奖励

广告类型选择视频,并为广告资源类型选择奖励。完成后,输入展示位置名称,填写广告资源简介,然后从下拉列表中选择合适的类别

奖励设置下,使用下拉列表选择奖励内容,然后输入您的首选虚拟货币名称。完成后,点击创建按钮以创建您的展示位置。

原生

广告类型选择静态图片,并为广告资源类型选择原生。完成后,输入展示位置名称,填写广告资源简介,然后选择广告图片选择。完成后,点击创建按钮以创建您的展示位置。

对于原生视频广告,请为广告类型选择视频,并为广告资源类型选择原生(自定义)。完成后,输入展示位置名称,填写广告资源简介,然后从下拉列表中选择合适的类别

原生设置下,从列表中选择视频广告方向原生广告类型。 完成后,点击创建按钮以创建您的展示位置。

若要在下一部分中设置 Ad Manager 广告单元,您需要每个展示位置的 apiKeyspotID。 要找到这些展示位置,请转到展示位置管理标签页,然后选择应用名称下的 SDK 按钮。

记下 apiKeyspotID

此外,您还需要您的 API 密钥用于 nend 的报告 API,他们称之为用于抓取的 API 密钥。您可以在工具标签页中找到该工具。

第 2 步:在界面中设置 Ad Manager 需求

为广告单元配置中介设置

登录您的 Ad Manager 帐号

依次转到投放 > 收益组,然后点击新建收益组按钮。

为您的收益组输入一个独一无二的名称,将状态设为有效,选择广告格式,然后将广告资源类型设为移动应用。在定位 > 广告资源部分下,选择广告资源移动应用(您要向其中添加中介)下方的广告单元。

接下来,点击添加收益合作伙伴按钮。

如果您已有nend的收益合作伙伴,可以选择它。否则,请选择创建新的收益合作伙伴

选择 nend 作为广告联盟,输入一个具有唯一性的名称并启用中介

开启自动收集数据,然后输入在上一部分中获取的Reporting API Key from the API Key for Scraping

选择收益合作伙伴后,选择移动 SDK 中介作为集成类型,选择 Android 作为平台,选择有效作为状态。输入在上一部分获得的Slot ID and API Key 。然后,输入默认每千次展示费用值。

完成后,点击页面底部的保存

第 3 步:导入 nend SDK 和适配器

在项目级 settings.gradle.kts 文件中,添加以下代码库:

dependencyResolutionManagement {
  repositories {
    google()
    mavenCentral()
    maven {
      url = uri("https://fan-adn.github.io/nendSDK-Android-lib/library")
    }
  }
}

然后,在应用级 build.gradle.kts 文件中,添加以下实现依赖项和配置。请使用最新版本的 Nend SDK 和适配器:

dependencies {
    implementation("com.google.android.gms:play-services-ads:23.0.0")
    implementation("com.google.ads.mediation:nend:10.0.0.0")
}

手动集成

  1. 下载最新版本的 nend Android SDK,并将其添加到您的项目。

  2. 转到 Google Maven 制品库中的 nend Adapter 工件。选择最新版本,下载 nend Adapter 的 .aar 文件,并将其添加到您的项目。

第 5 步:添加所需的代码

Nend 集成不需要其他代码。

第 6 步:测试实现效果

启用测试广告

请务必为 Ad Manager。 若要获取横幅广告、插页式广告和激励广告的测试广告,Nend 建议您使用 nend 测试广告单元 页面中提供的 API 密钥和 Spot ID。您可以在测试时输入这些 API 密钥和 Spot ID 作为 AdMob 广告单元的 API 密钥和 Spot ID,然后在您的应用准备好投入生产环境后替换为实际的 API 密钥和 Spot ID。

验证测试广告

如需验证您收到的是来自nend的测试广告,请使用相应广告来源在广告检查器中启用单一广告来源测试nend (Waterfall)

可选步骤

网络特定的参数

Nend 适配器支持其他请求参数,您可以使用 NendExtrasBundleBuilder 类将这些参数传递给适配器。此类包括以下方法:

  • setInterstitialType(InterstitialType):Nend 支持选择 TYPE_NORMAL(对于常规插页式广告)或 TYPE_VIDEO(对于插页式视频广告)。如果未添加此 extra 参数,Nend 默认使用 TYPE_NORMAL 作为插页式广告类型。
  • setNativeAdsType(nativeAdsType):Nend 支持选择 TYPE_NORMAL(适用于常规原生广告)或 TYPE_VIDEO(适用于原生视频广告)。如果未添加此额外参数,Nend 默认使用 TYPE_NORMAL 作为原生广告类型。

Java

Bundle bundle = new NendAdapter.NendExtrasBundleBuilder()
                        .setInterstitialType(InterstitialType.TYPE_NORMAL)
                        .setNativeAdsType(FormatType.TYPE_NORMAL)
                        .build();

AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(NendAdapter.class, bundle)
    .build();

adLoader.loadAd(adRequest);

Kotlin

val bundle = NendAdapter.NendExtrasBundleBuilder()
                     .setInterstitialType(InterstitialType.TYPE_NORMAL)
                     .setNativeAdsType(FormatType.TYPE_NORMAL)
                     .build()

val adRequest = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(NendAdapter.class, bundle)
    .build()

adLoader.loadAd(adRequest)

使用原生广告

广告呈现

Nend 适配器以 NativeAd 对象的形式返回其原生广告。它会填充 NativeAd 的以下 字段

字段 由 Nend 适配器填充
标题
映像 1
正文
应用图标 2
号召性用语
广告客户名称
星级
存储
价格

1 Nend 配置广告图片选择设置为横向 (5: 3) 大型广告图片的原生展示位置提供图片素材资源。

2 对于配置广告图片选择设为无图片(仅限文字)的原生展示位置,Nend 提供图标素材资源。

错误代码

如果适配器无法从 nend 接收到广告,发布商可以通过以下类下的 ResponseInfo.getAdapterResponse() 检查广告响应中的底层错误:

形式 类名称
横幅 com.google.ads.mediation.nend.NendAdapter
插页式广告 com.google.ads.mediation.nend.NendAdapter
已奖励 com.google.ads.mediation.nend.NendRewardedAdapter
原生 com.google.ads.mediation.nend.NendMediationAdapter

以下是广告加载失败时 nend 适配器抛出的代码及相应消息:

错误代码 网域 原因
101 com.google.ads.mediation.nend 需要活动上下文才能加载和展示广告。
102 com.google.ads.mediation.nend 在界面中配置的 Ad Manager 服务器参数缺失/无效。
103 com.google.ads.mediation.nend 尚未准备好展示。
104 com.google.ads.mediation.nend 无法播放广告。
105 com.google.ads.mediation.nend 请求的广告尺寸与支持的横幅广告尺寸不匹配。
106 com.google.ads.mediation.nend Context 对象引用为 null 并且/或者最近已从内存中释放。
200-299 net.nend.android Nend SDK 返回了插页式广告加载错误。如需了解详情,请参阅代码
300-399 net.nend.android Nend SDK 返回了插页式广告错误。如需了解详情,请参阅代码
400-499 net.nend.android Nend SDK 返回了广告错误。如需了解详情,请参阅代码
101 com.google.mediation.nend Nend SDK 返回了一个加载失败回调,并且没有其他错误信息。
102 com.google.mediation.nend Nend SDK 返回了一个显示失败回调,并且不包含其他错误信息。
103 com.google.mediation.nend 在界面中配置的 Ad Manager 服务器参数缺失/无效。
104 com.google.mediation.nend 未能加载原生广告图片素材资源。
105 com.google.mediation.nend 由于广告尚未就绪,未能展示 Nend 广告。
106 com.google.mediation.nend 请求的横幅广告尺寸与支持的横幅广告尺寸不匹配。
200-699 由 nend SDK 发送。 Nend SDK 返回错误。如需了解详情,请参阅 Nend 的文档

Nend Android 中介适配器更新日志

版本 10.0.0.0

  • 将 Google 移动广告 SDK 的最低版本更新为 22.3.0。
  • 已验证与 nend SDK 10.0.0 的兼容性。

构建和测试方式

  • Google 移动广告 SDK 22.3.0 版。
  • Nend SDK 版本 10.0.0.

版本 9.0.1.0

  • 更新了适配器以使用新的 VersionInfo 类。
  • 将 Google 移动广告 SDK 最低版本更新到了 22.0.0。
  • 已验证与 nend SDK 9.0.1 的兼容性。

构建和测试方式

  • Google 移动广告 SDK 22.0.0 版
  • Nend SDK 9.0.1 版。

版本 9.0.0.0

  • 已验证与 nend SDK 9.0.0 的兼容性。
  • 将 Google 移动广告 SDK 最低版本更新为 21.2.0。

构建和测试方式

  • Google 移动广告 SDK 21.2.0 版。
  • Nend SDK 版本 9.0.0.

版本 8.2.0.0

  • 已验证与 nend SDK 8.2.0 的兼容性。

构建和测试方式

  • Google 移动广告 SDK 21.0.0 版
  • Nend SDK 8.2.0 版。

版本 8.1.0.1

  • compileSdkVersiontargetSdkVersion 更新为了 API 31。
  • 将 Google 移动广告 SDK 最低版本更新为 21.0.0。

构建和测试方式

  • Google 移动广告 SDK 21.0.0 版
  • Nend SDK 8.1.0 版。

版本 8.1.0.0

  • 已验证与 nend SDK 8.1.0 的兼容性。
  • 修复了当 nend 返回 null 广告图片或徽标网址时出现的 NullPointerException 崩溃问题。
  • 将 Google 移动广告 SDK 的最低版本更新为 20.5.0。

构建和测试方式

  • Google 移动广告 SDK 20.5.0 版
  • Nend SDK 8.1.0 版。

版本 8.0.1.0

  • 已验证与 nend SDK 8.0.1 的兼容性。
  • 修复了使用错误域名返回某些 AdError 对象的 bug。
  • 将 Google 移动广告 SDK 的最低版本更新为 20.4.0。

构建和测试方式

  • Google 移动广告 SDK 20.4.0 版
  • Nend SDK 8.0.1 版。

版本 7.1.0.0

  • 已验证与 nend SDK 7.1.0 的兼容性。
  • 更新了错误代码以捕获 nend UNSUPPORTED_DEVICE 错误。
  • 将 Google 移动广告 SDK 的最低版本更新为 20.2.0。

构建和测试方式

  • Google 移动广告 SDK 20.2.0 版
  • Nend SDK 7.1.0 版。

版本 7.0.3.0

  • 已验证与 nend SDK 7.0.3 的兼容性。
  • 添加了描述性的错误代码以及适配器加载/显示失败的原因。
  • 将 Google 移动广告 SDK 的最低版本更新为 20.0.0。

构建和测试方式

  • Google 移动广告 SDK 版本 20.0.0.
  • Nend SDK 7.0.3 版。

版本 7.0.0.0

  • 已验证与 nend SDK 7.0.0 的兼容性。
  • 将 Google 移动广告 SDK 的最低版本更新为 19.4.0。

构建和测试方式

  • Google 移动广告 SDK 19.4.0 版
  • Nend SDK 7.0.0 版。

版本 6.0.1.0

  • 已验证与 nend SDK 6.0.1 的兼容性。
  • 将 Google 移动广告 SDK 的最低版本更新为 19.3.0。

构建和测试方式

  • Google 移动广告 SDK 19.3.0 版
  • Nend SDK 版本 6.0.1。

版本 6.0.0.0

  • 已验证与 nend SDK 6.0.0 的兼容性。
  • 将最低 Android SDK 版本更新为 API 19。

构建和测试方式

  • Google 移动广告 SDK 19.2.0 版。
  • Nend SDK 版本 6.0.0.

版本 5.4.2.1

  • 更新了适配器,以支持内嵌自适应横幅广告请求。
  • 修复了智能横幅广告销毁时可能发生的罕见竞态条件崩溃问题。
  • 将 Google 移动广告 SDK 的最低版本更新为 19.2.0。

构建和测试方式

  • Google 移动广告 SDK 19.2.0 版。
  • Nend SDK 版本 5.4.2。

版本 5.4.2.0

  • 添加了对原生广告的支持。
  • 已验证与 nend SDK 5.4.2 的兼容性。
  • 将 Google 移动广告 SDK 最低版本更新到了 19.0.0。

构建和测试方式

  • Google 移动广告 SDK 19.0.0 版
  • Nend SDK 版本 5.4.2。

版本 5.3.0.0

  • 已验证与 nend SDK 5.3.0 的兼容性。
  • 将 Google 移动广告 SDK 的最低版本更新为 18.2.0。

构建和测试方式

  • Google 移动广告 SDK 18.2.0 版.
  • Nend SDK 版本 5.3.0。

版本 5.2.0.0

  • 已验证与 nend SDK 5.2.0 的兼容性。
  • 将 Google 移动广告 SDK 的最低版本更新为 18.1.1。

版本 5.1.0.4

  • 修复了横幅广告和插页式广告不转发 onAdClicked() 事件的问题。
  • 修复了在 nend 横幅广告被销毁时抛出 NullPointerException 的问题。
  • 已将适配器迁移到 AndroidX。
  • 将 Google 移动广告 SDK 的最低版本更新为 18.0.0。

版本 5.1.0.3

  • 添加了在 SmartBanner 中显示 nend 横幅的一部分的实现。适合 SmartBanner 的尺寸
    • 纵向和横向
      • 手机:320×50
      • 平板电脑:728×90 或 320×50

版本 5.1.0.2

  • 添加了对灵活横幅广告尺寸的支持。

版本 5.1.0.1

  • 更新了适配器,以支持新的公开 Beta 版 Rewarded API。
  • 将 Google 移动广告 SDK 的最低版本更新为 17.2.0。

版本 5.1.0.0

  • 已验证与 nend SDK 5.1.0 的兼容性。

版本 5.0.2.1

  • 移除了用于转发用户功能的函数,因为以下方法在 AdRequest.Builder 上已废弃。
    • setGender()
    • setBirthday()
    • setIsDesignedForFamiles()

版本 5.0.2.0

  • 已验证与 nend SDK 5.0.2 的兼容性。

版本 5.0.1.0

  • 已验证与 nend SDK 5.0.1 的兼容性。

版本 5.0.0.0

  • 已验证与 nend SDK 5.0.0 的兼容性。

版本 4.0.5.0

  • 已验证与 nend SDK 4.0.5 的兼容性。

版本 4.0.4.1

  • 支持 RewardedVideoAdListener 的 onRewardedVideoCompleted() 方法。

版本 4.0.4.0

  • 已验证与 nend SDK 4.0.4 的兼容性。

版本 4.0.2.1

  • 添加了使用 NendExtrasBundleBuilder 类创建中介额外项 Bundle 的功能。

版本 4.0.2.0

  • 在 Google 移动广告中介开源项目中的首个版本。
  • 添加了对横幅广告、插页式广告和激励视频广告的支持。