Native广告

请先根据文档 basic integration article集成,再进行ad format部分集成.

Native广告是一组素材,允许开发者可以自由设计其布局,以便更能适应您的UI设计。

创建并加载Native广告

  1. KotlinJava
    nativeAd = NativeAd(requireActivity(), placementId).apply {
         adListener = this@NativeAdFragment
         load()
      }
      

展示Native广告

  1. 要展示Native广告在您的应用中,您需要将所有元素填入对应的layout中,例如按钮文字,icon,主图片等等。更多信息请查看 Native Ad UI Elements
  2. 将Native ad的添加到到一个nativeAdContainer(FrameLayout类型)中。
  3. 注册可点击控件
  4. 调用 registerViewForInteraction 并传递根View组件和 MediaViewiconView还有 clickableViews。其中根view和MediaView是必须的。 如果没有注册clickableViews,那么 MediaView则为唯一可点击组件。
KotlinJava
nativeAd?.let { nativeAd ->
             val layout = LayoutNativeAdBinding.inflate(LayoutInflater.from(requireContext()))
             with(layout) {
                 binding.adContainer.removeAllViews()
                 val clickableViews = mutableListOf(imgAdIcon, pnlVideoAd, btnAdCta)
                 lbAdTitle.text = nativeAd.getAdTitle()
                 lbAdBody.text = nativeAd.getAdBodyText()
                 lbAdRating.text = String.format("Rating: %s", nativeAd.getAdStarRating())
                 lbAdSponsor.text = nativeAd.getAdSponsoredText()
                 btnAdCta.text = nativeAd.getAdCallToActionText()
                 btnAdCta.isVisible = nativeAd.hasCallToAction()
      nativeAd.registerViewForInteraction(
                     root, pnlVideoAd, imgAdIcon, clickableViews
                 )	
                 binding.apply {
                     nativeAdContainer.show()
                 }
  
  
                 nativeAdContainer.addView(root)
             }
         }
  

Native Ad UI Elements

nativelayout.png

These are the UI elements illustrated in the layout above:

  1. FrameLayout: 必须 该组件包含所有的native组件。
  2. ImageView: 可选。展示广告icon
  3. MediaView: 必须展示Native广告主图片
  4. TextView: 可选 展示广告标题文字
  5. TextView: 可选 展示广告rating
  6. TextView: 可选 展示 "Sponsored By" 文字
  7. adOptionsPosition: 可选 控制隐私按钮所在位置。
  8. TextView: 可选 展示广告内容文字
  9. Button: 可选. 按钮用来展示Action (CTA) 文本

您可以将root view放在任何您想放置的位置。

销毁Native广告

如果您想重复使用View来展示不同native广告,您务必要在注册之前,调用unregisterView()方法来。

KotlinJava
nativeAd.unregisterView()

Register for Callbacks

您可以通过添加并实现 NativeAdListener来获取回调事件。

KotlinJava
override fun onAdLoaded(baseAd: BaseAd) {
  Log.d(TAG, "Creative id:" + baseAd.creativeId)
  }
  override fun onAdStart(baseAd: BaseAd) {
  }
  override fun onAdImpression(baseAd: BaseAd) {
  }
  override fun onAdEnd(baseAd: BaseAd) {
  }
  override fun onAdClicked(baseAd: BaseAd) {
  }
  override fun onAdLeftApplication(baseAd: BaseAd) {
  }
  override fun onAdFailedToLoad(baseAd: BaseAd, adError: VungleError) {
  }
  override fun onAdFailedToPlay(baseAd: BaseAd, adError: VungleError) {
  }
  

测试广告

您可以通过两种方式测试插屏广告:将您的应用在dashboard中设置为测试模式;将您的设备gaid添加到dashboard的测试设备中,并使用该设备测试。 请查看该文档 Test Your Integration: Test Mode and Test Devices来进一步了解。

Questions?

Need further assistance, feel free to reach out to us, we’re here to help!

这篇文章有帮助吗?