Android穿山甲banner广告穿插到项目的banner中
项目中的banner需要用第三库的banner,目前是在下面的banner库测试可以
implementation 'io.github.youth5201314:banner:2.2.2'
用自己写的banner会显示不了穿山甲banner的,我也不知道为什么。
给下banner加入穿山甲banner的代码:
private void loadExpressAd(String codeId,int position,FrameLayout express_container) {//step4:创建广告请求参数AdSlot,具体参数含义参考文档if (mTTAdNative == null){mTTAdNative = TTAdManagerHolder.get().createAdNative(mContext);}AdSlot adSlot = new AdSlot.Builder().setCodeId(codeId) //广告位id.setAdCount(1) //请求广告数量为1到3条.setIsAutoPlay(false).setExpressViewAcceptedSize(Utils.getScreenWidth(mContext,true) , (Utils.getScreenWidth(mContext,true) )/2) //期望模板广告view的size,单位dp.build();//step5:请求广告,对请求回调的广告作渲染处理mTTAdNative.loadBannerExpressAd(adSlot, new TTAdNative.NativeExpressAdListener() {@Overridepublic void onError(int code, String message) {RxJavaUtil.delayTimeTodo((RxAppCompatActivity) mContext, 500, new RxJavaUtil.DelayTodoListener() {@Overridepublic void delayTodo() {remove(position);}});}@Overridepublic void onNativeExpressAdLoad(List<TTNativeExpressAd> ads) {if (ads == null || ads.size() == 0) {return;}/******************** 如果旧广告对象不使用了,在替换成新广告对象前,必须进行销毁,否则可能导致多个广告对象同时存在,影响SSR*/if (mTTAd != null && express_container.getChildCount() > 0) {mTTAd.destroy();}/********************/mTTAd = ads.get(0);// 不用轮播mTTAd.setSlideIntervalTime(0);bindAdListener(mTTAd,position,express_container);mTTAd.render();}});}private void bindAdListener(TTNativeExpressAd ad,int position,FrameLayout express_container) {ad.setExpressInteractionListener(new TTNativeExpressAd.ExpressAdInteractionListener() {@Overridepublic void onAdClicked(View view, int type) {}@Overridepublic void onAdShow(View view, int type) {}@Overridepublic void onRenderFail(View view, String msg, int code) {RxJavaUtil.delayTimeTodo((RxAppCompatActivity) mContext, 500, new RxJavaUtil.DelayTodoListener() {@Overridepublic void delayTodo() {remove(position);}});}@Overridepublic void onRenderSuccess(View view, float width, float height) {if (view.getParent() == null){express_container.addView(view);}express_container.setVisibility(View.VISIBLE);}});//dislike设置bindDislike(ad,position);
关键还是用那个第三方banner库