From 27412be889d0a58a93fd20d40d40ff22afe4990c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 15 八月 2020 17:39:24 +0800 Subject: [PATCH] '视频详情页面完善' --- BuWanVideo/src/com/weikou/beibeivideo/util/ad/ExpressAdManager.java | 185 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 136 insertions(+), 49 deletions(-) diff --git a/BuWanVideo/src/com/weikou/beibeivideo/util/ad/ExpressAdManager.java b/BuWanVideo/src/com/weikou/beibeivideo/util/ad/ExpressAdManager.java index 8ab99ce..61023d8 100644 --- a/BuWanVideo/src/com/weikou/beibeivideo/util/ad/ExpressAdManager.java +++ b/BuWanVideo/src/com/weikou/beibeivideo/util/ad/ExpressAdManager.java @@ -31,6 +31,7 @@ */ public class ExpressAdManager { public final static int SOURCE_GDT = 1;//骞跨偣閫� + public final static int SOURCE_GDT2 = 11;//骞跨偣閫�2.0 public final static int SOURCE_CSJ = 2;//绌垮北鐢� int sourceType = SOURCE_GDT; @@ -72,7 +73,30 @@ } adLoadListener.onSuccess(adContainerList); } + + @Override + public void onSuccess2(List<NativeExpressADData2> adList) { + + } }, mContext); + } else if (sourceType == SOURCE_GDT2) { + loadGDT2(pid, widthDP, heightDP, count, new IGDTAdLoadListener() { + @Override + public void onSuccess(List<NativeExpressADView> adList) { + + } + + @Override + public void onSuccess2(List<NativeExpressADData2> adList) { + List<ExpressAdContainer> adContainerList = new ArrayList<>(); + if (adList != null) + for (NativeExpressADData2 ad : adList) { + adContainerList.add(new ExpressAdContainer(ad)); + } + adLoadListener.onSuccess(adContainerList); + } + }, mContext); + } else if (sourceType == SOURCE_CSJ) { loadCSJ(pid, widthDP, heightDP, count, new ICSJAdLoadListener() { @Override @@ -134,6 +158,50 @@ /** + * 瑙嗛鎾斁鍣ㄥ簳閮ㄥ皬骞垮憡 + * + * @param adLoadListener + */ + public void loadVideoDetailPlayerBottomAd(final IAdLoadListener adLoadListener) { + //鍔犺浇澶у浘 + String pid = null; + if (sourceType == SOURCE_CSJ) { + pid = "945375047"; + } else if (sourceType == SOURCE_GDT2) { + pid = GDTConstant.PID_2_VIDEO_DETAIL_PLAY_EXPRESS1; + } + //鑾峰彇灞忓箷鐨勫 + int deviceWidth = DimenUtils.getScreenWidth(mContext); + deviceWidth = DimenUtils.px2dip(mContext, deviceWidth); + int width = (deviceWidth - 20); + int height = 80; + loadAd(width, height, pid, 1, adLoadListener); + } + + + /** + * 鐩稿叧鎺ㄨ崘搴曢儴灏忓箍鍛� + * + * @param adLoadListener + */ + public void loadVideoDetailRelativeVideoBottomAd(final IAdLoadListener adLoadListener) { + //鍔犺浇澶у浘 + String pid = null; + if (sourceType == SOURCE_CSJ) { + pid = "945375047"; + } else if (sourceType == SOURCE_GDT2) { + pid = GDTConstant.PID_2_VIDEO_DETAIL_PLAY_EXPRESS2; + } + //鑾峰彇灞忓箷鐨勫 + int deviceWidth = DimenUtils.getScreenWidth(mContext); + deviceWidth = DimenUtils.px2dip(mContext, deviceWidth); + int width = (deviceWidth - 20); + int height = (int) (width * 0.5625); + loadAd(width, height, pid, 1, adLoadListener); + } + + + /** * 鍔犺浇鍒嗙被灏忓浘 * * @param adLoadListener @@ -176,27 +244,6 @@ loadAd(width, height, pid, count, adLoadListener); } - - /** - * 瑙嗛璇︽儏椤典俊鎭祦骞垮憡 - * @param count - * @param adLoadListener - */ - public void loadVideoDetailAd(int count, final IAdLoadListener adLoadListener) { - //鍔犺浇澶у浘 - String pid = null; - if (sourceType == SOURCE_CSJ) { - pid = "945379581"; - } else if (sourceType == SOURCE_GDT) { - pid = BeibeiConstant.GDT_SEARCH_RESULT_MIN_NATIVE; - } - //鑾峰彇灞忓箷鐨勫 - int deviceWidth = DimenUtils.getScreenWidth(mContext); - deviceWidth = DimenUtils.px2dip(mContext, deviceWidth); - int width = (deviceWidth - 20); - int height = 75; - loadAd(width, height, pid, count, adLoadListener); - } /** * 鍔犺浇骞跨偣閫氬箍鍛� @@ -271,6 +318,42 @@ } /** + * 2.0鐗堟湰骞跨偣閫氬師鐢� + * + * @param positionId + * @param widthDP + * @param heightDP + * @param count + * @param adLoadListener + * @param context + */ + private void loadGDT2(String positionId, int widthDP, int heightDP, int count, final IGDTAdLoadListener adLoadListener, Context context) { + NativeExpressAD2 nativeExpressAD2 = new NativeExpressAD2(context, positionId, new NativeExpressAD2.AdLoadListener() { + @Override + public void onLoadSuccess(List<NativeExpressADData2> list) { + if (adLoadListener != null) + adLoadListener.onSuccess2(list); + } + + @Override + public void onNoAD(AdError adError) { + if (adLoadListener != null) + adLoadListener.onSuccess2(null); + } + }); + + nativeExpressAD2.setAdSize(widthDP, heightDP); + VideoOption2.Builder builder = new VideoOption2.Builder(); + builder.setAutoPlayPolicy(VideoOption2.AutoPlayPolicy.WIFI) // WIFI 鐜涓嬪彲浠ヨ嚜鍔ㄦ挱鏀捐棰� + .setAutoPlayMuted(true) // 鑷姩鎾斁鏃朵负闈欓煶 + .setDetailPageMuted(false) // 瑙嗛璇︽儏椤垫挱鏀炬椂涓嶉潤闊� + .setMaxVideoDuration(0) // 璁剧疆杩斿洖瑙嗛骞垮憡鐨勬渶澶ц棰戞椂闀匡紙闂尯闂达紝鍙崟鐙缃級锛屽崟浣�:绉掞紝榛樿涓� 0 浠h〃鏃犻檺鍒讹紝鍚堟硶杈撳叆涓猴細5<=maxVideoDuration<=60. 姝よ缃細褰卞搷骞垮憡濉厖锛岃璋ㄦ厧璁剧疆 + .setMinVideoDuration(0); // 璁剧疆杩斿洖瑙嗛骞垮憡鐨勬渶灏忚棰戞椂闀匡紙闂尯闂达紝鍙崟鐙缃級锛屽崟浣�:绉掞紝榛樿涓� 0 浠h〃鏃犻檺鍒讹紝 姝よ缃細褰卞搷骞垮憡濉厖锛岃璋ㄦ厧璁剧疆 + nativeExpressAD2.setVideoOption2(builder.build()); + nativeExpressAD2.loadAd(count); + } + + /** * 绌垮北鐢插箍鍛� * * @param codeId @@ -316,36 +399,38 @@ } else { fl_ad.setVisibility(View.VISIBLE); if (ad.getGdt() != null) { -// ad.getGdt().setAdEventListener(new AdEventListener() { -// @Override -// public void onClick() { -// -// } -// -// @Override -// public void onExposed() { -// -// } -// -// @Override -// public void onRenderSuccess() { -// fl_ad.addView(ad.getGdt().getAdView()); -// } -// -// @Override -// public void onRenderFail() { -// -// } -// -// @Override -// public void onAdClosed() { -// if (adEventListener != null) { -// adEventListener.closeAd(); -// } -// } -// }); ad.getGdt().render(); fl_ad.addView(ad.getGdt()); + } else if (ad.getGdt2() != null) { + ad.getGdt2().setAdEventListener(new AdEventListener() { + @Override + public void onClick() { + + } + + @Override + public void onExposed() { + + } + + @Override + public void onRenderSuccess() { + fl_ad.addView(ad.getGdt2().getAdView()); + } + + @Override + public void onRenderFail() { + + } + + @Override + public void onAdClosed() { + if (adEventListener != null) { + adEventListener.closeAd(); + } + } + }); + ad.getGdt2().render(); } else if (ad.getCsj() != null) { ad.getCsj().setDislikeCallback(activity, new TTAdDislike.DislikeInteractionCallback() { @@ -377,6 +462,8 @@ interface IGDTAdLoadListener { public void onSuccess(List<NativeExpressADView> adList); + + public void onSuccess2(List<NativeExpressADData2> adList); } interface ICSJAdLoadListener { -- Gitblit v1.8.0