Skip to content

横幅广告

横幅广告是一种矩形的广告形式,会占据应用程序界面的一部分区域,通常位于屏幕的顶部或底部,或者嵌入可滚动内容之中。在用户与应用程序进行交互时,这些广告会一直可见,并且在设定的时间过后会自动恢复刷新,从而使用过程的不间断性。

本指南将向您介绍如何将横幅广告整合到您的应用程序中。

请求广告

构建CTAdRequest并传入placementId,调用CTBannerView.loadAd方法请求广告。

  • Java
java

CTAdRequest adRequest = new CTAdRequest.Builder()
        .setPlacementId("BANNER_PLACEMENT_ID")// [必要] carty开发者平台生成的placementId
        .setAdSize(CTAdRequest.AdSize.BANNER_300_250)// [可选] 设置banner广告尺寸
        .build();
CTBannerView bannerView = new CTBannerView(context, adRequest);
bannerView.loadAd();
  • kotlin
kotlin

val adRequest = CTAdRequest.Builder()
    .setPlacementId("BANNER_PLACEMENT_ID")// [必要] carty开发者平台生成的placementId
    .setAdSize(CTAdRequest.AdSize.BANNER_300_250)//  [可选] 设置banner广告尺寸
    .build()
val bannerView = CTBannerView(context, adRequest)
bannerView.loadAd()
  • 横幅广告尺寸说明
枚举值尺寸
CTAdRequest.AdSize.BANNER_320_50320 x 50
CTAdRequest.AdSize.BANNER_320_100320 x 100
CTAdRequest.AdSize.BANNER_300_250300 x 250

注册监听

调用CTBannerView.setBannerAdListener方法注册监听,建议在loadAd前调用。

java

bannerView.setBannerAdListener(new CTBannerAdListener() {
    @Override
    public void onLoaded(CTBaseAd baseAd) {
    }

    @Override
    public void onLoadFailed(CTAdError adError) {
    }

    @Override
    public void onShown(CTBaseAd baseAd) {
    }

    @Override
    public void onShowFailed(CTBaseAd baseAd, CTAdError adError) {
    }

    @Override
    public void onClicked(CTBaseAd baseAd) {
    }

    @Override
    public void onClosed(CTBaseAd baseAd) {
    }
});
  • kotlin
kotlin

bannerView.setBannerAdListener(object : CTBannerAdListener {
    override fun onLoaded(baseAd: CTBaseAd?) {
    }

    override fun onLoadFailed(adError: CTAdError?) {
    }

    override fun onShown(baseAd: CTBaseAd?) {
    }

    override fun onShowFailed(baseAd: CTBaseAd?, adError: CTAdError?) {
    }

    override fun onClicked(baseAd: CTBaseAd?) {
    }

    override fun onClosed(baseAd: CTBaseAd?) {
    }
})

展示广告

开发者可以在调用loadAd前把bannerView添加到布局中展示,默认布局参数设置成WRAP_CONTENT,横幅广告加载成功会自动添加到屏幕展示。

java

FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
        FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT);
params.gravity = Gravity.CENTER;

adContainer.addView(bannerView, params);
  • kotlin
kotlin

val params = FrameLayout.LayoutParams(
    FrameLayout.LayoutParams.WRAP_CONTENT,
    FrameLayout.LayoutParams.WRAP_CONTENT
)
params.gravity = Gravity.CENTER

adContainer.addView(
    this,
    params
)

销毁广告

建议在Activity销毁时调用destroy方法释放广告资源。

java

bannerView.destroy();
  • kotlin
kotlin

bannerView.destroy()

GitHub示例