获取横幅广告管理类
BannerManager bannerManager = BannerManager.getInstance();
接口定义
/**
* 获取横幅广告视图
* @param context 上下文
* @param bannerViewListener 横幅广告视图监听
* @return 广告视图
*/
public BannerView getBannerView(Context context, String adId, final BannerViewListener bannerViewListener);
/**
* 设置广告填充模式
* @param adScalingModel
* Config.AD_SCALING_MODE_SCALE_TO_FIT (默认)
* Config.AD_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING
*/
public void setAdScalingModel(int adScalingModel);
BannerView生命周期
/**
* 恢复
*/
public void onResume()
/**
* 暂停
*/
public void onPause()
/**
* 销毁
*/
public void onDestroy()
回调监听
/**
* 请求失败
* @param adId 广告位id
* @param code 错误码
* @param errorMsg 错误消息
*/
void onRequestFailed(String adId, int code, String errorMsg);
/**
* 请求成功
* @param adId 广告位id
* @param viewWidth 广告物料的宽(单位:px)
* @param viewHeight 广告物料的高(单位:px)
*/
void onRequestSuccess(String adId, int viewWidth, int viewHeight);
/**
* 横幅广告展示成功
* @param adId 广告位id
*/
void onShowSuccess(String adId);
/**
* 横幅广告切换
* @param adId 广告位id
*/
void onSwitchBanner(String adId);
/**
* 横幅广告展示失败
*
* @param adId 广告位id
* @param code 错误码
* 0.网络异常
* 1.无广告
* 2.资源未加载
* 3.频繁展示
* 4.视图不可见
* @param msg 错误消息
*/
void onShowFailed(String adId, int code, String msg);
/**
* 广告点击事件
* 注:横幅广告点击后自动销毁,如果想在点击后继续显示广告,请重新获取BannerView
* @param adId 广告位id
*/
void onBannerClicked(String adId);
使用示例
bannerContainer = (RelativeLayout) findViewById(R.id.bannerContainer);
BannerManager.getInstance().setAdScalingModel(Config.AD_SCALING_MODE_SCALE_TO_FIT);
bannerView = BannerManager.getInstance().getBannerView(this, "350", new BannerViewListener() {
@Override
public void onRequestSuccess(int viewWidth, int viewHeight) {
Log.e(TAG, "onRequestSuccess: " + viewWidth + "," + viewHeight);
bannerContainer.getLayoutParams().width = ViewGroup.LayoutParams.MATCH_PARENT;
bannerContainer.getLayoutParams().height = ScreenUtil.getScreenWidth(BannerActivity.this) * viewHeight / viewWidth;
}
@Override
public void onRequestFailed(int code, String errorMsg) {
Log.e(TAG, "onRequestFailed" + code + " : " + errorMsg);
}
@Override
public void onShowSuccess() {
Log.e(TAG, "onShowSuccess");
}
@Override
public void onSwitchBanner() {
Log.e(TAG, "onSwitchBanner");
}
@Override
public void onShowFailed(int code, String msg) {
Log.e(TAG, "onShowFailed: " + code + "," + msg);
}
@Override
public void onBannerClicked() {
Log.e(TAG, "onBannerClicked");
}
});
bannerContainer.addView(bannerView);
生命周期使用示例
bannerView.onPause();
bannerView.onResume();
bannerView.onDestroy();