From 760aee20870a34e6130a1c12237c5b747e2b00bd Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期五, 28 一月 2022 12:58:40 +0800
Subject: [PATCH] 隐私合规,青少年模式,64位兼容

---
 MGVideo/src/com/mugua/mgvideo/util/ad/FullVideoAdManager.java |  125 ++++++++++++++++++++++++++++++++---------
 1 files changed, 96 insertions(+), 29 deletions(-)

diff --git a/MGVideo/src/com/mugua/mgvideo/util/ad/FullVideoAdManager.java b/MGVideo/src/com/mugua/mgvideo/util/ad/FullVideoAdManager.java
index 79e81b6..b4c19ad 100644
--- a/MGVideo/src/com/mugua/mgvideo/util/ad/FullVideoAdManager.java
+++ b/MGVideo/src/com/mugua/mgvideo/util/ad/FullVideoAdManager.java
@@ -1,7 +1,7 @@
 package com.mugua.mgvideo.util.ad;
 
 import android.app.Activity;
-import android.content.Context;
+import android.util.Log;
 
 import com.bytedance.sdk.openadsdk.AdSlot;
 import com.bytedance.sdk.openadsdk.TTAdConstant;
@@ -9,7 +9,11 @@
 import com.bytedance.sdk.openadsdk.TTAdNative;
 import com.bytedance.sdk.openadsdk.TTFullScreenVideoAd;
 import com.mugua.mgvideo.util.DimenUtils;
-import com.yeshi.base.utils.ad.CSJConstant;
+import com.qq.e.ads.cfg.VideoOption;
+import com.qq.e.ads.interstitial2.UnifiedInterstitialAD;
+import com.qq.e.ads.interstitial2.UnifiedInterstitialADListener;
+import com.qq.e.comm.util.AdError;
+import com.yeshi.base.utils.ad.AdTypeEnum;
 import com.yeshi.base.utils.ad.TTAdManagerHolder;
 
 public class FullVideoAdManager {
@@ -26,11 +30,23 @@
         return fullVideoAdManager;
     }
 
-    public void loadAd(final Context context, final IFullVideoAdListener adListener) {
-        int w = DimenUtils.getScreenWidth(context);
-        int h = DimenUtils.getScreenHeight(context);
+    public void loadAd(final Activity context, AdTypeEnum adType, String pid, final IFullVideoAdListener adListener) {
+
+        if (adType == AdTypeEnum.csj) {
+            showCSJ(context, pid, adListener);
+        }else{
+            showGdt(context,pid,adListener);
+        }
+
+
+    }
+
+    private void showCSJ(Activity activity, String pid, final IFullVideoAdListener adListener) {
+        int w = DimenUtils.getScreenWidth(activity);
+        int h = DimenUtils.getScreenHeight(activity);
+
         AdSlot adSlot = new AdSlot.Builder()
-                .setCodeId(CSJConstant.CODE_FULL_VIDEO_VIDEO_DETAIL)
+                .setCodeId(pid)
                 .setSupportDeepLink(true)
                 .setExpressViewAcceptedSize(w, h)
                 .setOrientation(TTAdConstant.VERTICAL)
@@ -46,11 +62,13 @@
             return;
         }
 
-        mTTAdNative = ttAdManager.createAdNative(context);
+
+        mTTAdNative = ttAdManager.createAdNative(activity);
         //鍔犺浇鍏ㄥ睆瑙嗛
         mTTAdNative.loadFullScreenVideoAd(adSlot, new TTAdNative.FullScreenVideoAdListener() {
             @Override
             public void onError(int code, String message) {
+                adListener.onFail(message);
             }
 
             @Override
@@ -68,6 +86,7 @@
 
                     @Override
                     public void onAdClose() {
+                        adListener.onFinish();
                     }
 
                     @Override
@@ -81,8 +100,6 @@
 
                 });
 
-                if (ad != null && adListener != null)
-                    adListener.onSuccess(ad);
             }
 
             @Override
@@ -91,35 +108,85 @@
 
             @Override
             public void onFullScreenVideoCached(TTFullScreenVideoAd ttFullScreenVideoAd) {
-                mttFullVideoAd = ttFullScreenVideoAd;
+                ttFullScreenVideoAd.showFullScreenVideoAd(activity);
             }
         });
+
+
     }
 
 
-    /**
-     * 灞曠ず骞垮憡
-     *
-     * @param activity
-     */
-    public void showAd(Activity activity) {
-        if (mttFullVideoAd != null) {
-            mttFullVideoAd.showFullScreenVideoAd(activity);
-            mttFullVideoAd = null;
-        }
+    private UnifiedInterstitialAD iad;
+
+
+    private void showGdt(Activity activity, String pid,IFullVideoAdListener adListener) {
+
+        iad = new UnifiedInterstitialAD(activity, pid, new UnifiedInterstitialADListener() {
+
+            @Override
+            public void onADReceive() {
+                iad.showFullScreenAD(activity);
+            }
+
+            @Override
+            public void onVideoCached() {
+
+            }
+
+            @Override
+            public void onNoAD(AdError adError) {
+
+                Log.i("gdt", adError.toString());
+                adListener.onFail("no ad");
+            }
+
+            @Override
+            public void onADOpened() {
+
+            }
+
+            @Override
+            public void onADExposure() {
+
+            }
+
+            @Override
+            public void onADClicked() {
+
+            }
+
+            @Override
+            public void onADLeftApplication() {
+
+            }
+
+            @Override
+            public void onADClosed() {
+                adListener.onFinish();
+            }
+
+            @Override
+            public void onRenderSuccess() {
+
+            }
+
+            @Override
+            public void onRenderFail() {
+
+            }
+        });
+        VideoOption.Builder builder = new VideoOption.Builder();
+        VideoOption
+                option = builder.setAutoPlayMuted(true)
+                .setAutoPlayPolicy(VideoOption.AutoPlayPolicy.WIFI).build();
+        iad.setVideoOption(option);
+        iad.loadFullScreenAD();
     }
 
-    /**
-     * 鏄惁宸茬粡缂撳瓨浜嗗箍鍛�
-     *
-     * @return
-     */
-    public boolean isCacahed() {
-        return mttFullVideoAd != null;
-    }
 
     public interface IFullVideoAdListener {
-        public void onSuccess(TTFullScreenVideoAd ad);
+        void onFail(String msg);
+        void onFinish();
     }
 
 }

--
Gitblit v1.8.0