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