Google 移动广告 SDK 支持通过 Ad Exchange 属性。本指南介绍了 如何针对 Ad Exchange 支持的所有广告格式配置您的应用。
前提条件
配置您的应用以访问 Ad Exchange
添加您的 Ad Manager 应用 ID(可在 Ad Manager 中找到)
UI)映射到应用的
通过包含<meta-data>
android:name="com.google.android.gms.ads.APPLICATION_ID"
。对于android:value
,
插入您自己的 Ad Manager 应用 ID(用引号括起来)。
<manifest>
<application>
<!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
</application>
</manifest>
另请注意,如上所示,未能添加 <meta-data>
标记会导致
显示崩溃,并显示以下消息:
Missing application ID.
接下来,您可以初始化 Google 移动广告 SDK 然后选择要展示的广告格式本指南的其余部分将实现 横幅广告格式 展示了如何从 Ad Exchange 加载广告。相同的步骤适用于 Google 移动广告 SDK 支持的任何广告格式。
从 Ad Exchange 中加载广告
您可以在应用中使用带有尾部正斜线的 Ad Exchange 网站媒体资源代码,以替代广告单元 ID。
例如,通过在布局中放置 AdManagerAdView
来加载横幅广告
Activity
如下所示:
# main_activity.xml
...
<com.google.android.gms.ads.admanager.AdManagerAdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adManagerAdView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="ca-mb-app-pub-5629679302779023/">
</com.google.android.gms.ads.admanager.AdManagerAdView>
请注意,如果没有向 Ad Exchange 网站 属性代码会导致广告请求错误,并显示以下消息:
Invalid Request. Cannot determine request type. Is your ad unit id correct?
另请注意,您可以将 Ad Exchange 网络媒体资源代码转换为广告单元。
然后,您可以使用 Ad Manager 界面生成 Ad Exchange 报告
标记并将其复制到您的
应用。生成的代码应包含 Ad Exchange 网络媒体资源代码,后跟
不带尾随正斜杠的后代广告单元 ID,例如:
ca-mb-app-pub-5629679302779023/banner
或者,您也可以通过编程方式创建 AdManagerAdView
:
Java
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");
// TODO: Add adView to your view hierarchy.
Kotlin
val adView = AdManagerAdView(this)
adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"
// TODO: Add adView to your view hierarchy.
AdManagerAdView
准备就绪后,您可以调用 loadAd()
方法
AdManagerAdView
类,并使用广告
事件。
大功告成!现在,您的应用就可以从 Ad Exchange 加载并展示横幅广告了。
此外,您还可以使用 Ad Exchange 网络媒体资源来加载和显示 Ad Exchange 中的广告格式,请遵循相应指南:
(仅限已获批准的欧洲发布商)添加底价
您可以提交“底价”请求 功能。
获得批准后,您可以在广告请求中添加公开底价或不公开底价
分别使用 pubf
和 pvtf
参数。在以下代码中
例如,将“123”以微单位表示底价以及您广告联盟的
默认币种。示例:
采用微单位:如果您的默认货币是美元,请输入“6000000”是
等值 6.00 美元
Java
Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");
AdManagerAdRequest request = new AdManagerAdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter.class, extras)
.build();
Kotlin
val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");
val request = AdManagerAdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter::class::java, extras)
.build();