横幅广告
横幅广告是一种矩形的广告形式,会占据应用程序界面的一部分区域,通常位于屏幕的顶部或底部,或者嵌入可滚动内容之中。在用户与应用程序进行交互时,这些广告会一直可见,并且在设定的时间过后会自动恢复刷新,从而使用过程的不间断性。
本指南将向您介绍如何将横幅广告整合到您的应用程序中。
请求广告
构建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_50 | 320 x 50 |
| CTAdRequest.AdSize.BANNER_320_100 | 320 x 100 |
| CTAdRequest.AdSize.BANNER_300_250 | 300 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()