【发布时间】:2019-10-05 05:23:08
【问题描述】:
在Native Ads 部分中指定:
在构建和测试您的应用时,请务必使用测试广告而不是 比直播、制作广告。不这样做可能会导致暂停 您的帐户。
加载测试广告的最简单方法是使用我们的专用测试广告单元 Android 上 Native Advanced 的 ID:
ca-app-pub-3940256099942544/2247696110
但是,正在显示的广告很容易作为真实广告传递,所以我想知道是否有办法确认它们是测试广告。
首先我在初始化 MobileAds SDK 时使用我的真实 admob 应用 ID:
<string name="admob_app_id">ca-app-pub-xxxxxxxxxxxxxxx</string>
<string name="test_admob_app_unit_id">ca-app-pub-3940256099942544/2247696110</string>
MainActivity.kt
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
...
MobileAds.initialize(this, getString(R.string.admob_app_id))
然后我使用上面AdLoader中所述的原生测试id:
MapFragment.kt
private fun showAd(){
val adLoader = AdLoader.Builder(context, getString(R.string.test_admob_app_unit_id))
.forUnifiedNativeAd { ad: UnifiedNativeAd ->
/** Load image */
val image = ad.images[0].drawable
val options = RequestOptions.centerCropTransform()
Glide.with(this).load(image).apply(options).into(firstImage)
/** Load text */
heading.text = ad.headline
business.text = ad.advertiser
subText.text = "Ad"
val transaction = childFragmentManager.beginTransaction()
transaction.show(profile)
transaction.commit()
}
.build()
adLoader.loadAd(AdRequest.Builder().build())
}
广告已成功加载,但我想要一种方法来确认它是否是测试广告,这样我的帐户才不会被暂停。
【问题讨论】: