From 0a1336cd2b95126d66d6f3126cb48a446cdbfad1 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 22 十二月 2021 10:56:46 +0800
Subject: [PATCH] 抖音相关SDK集成

---
 app/src/com/hanju/video/app/util/ad/FullVideoAdManager.java |  137 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 108 insertions(+), 29 deletions(-)

diff --git a/app/src/com/hanju/video/app/util/ad/FullVideoAdManager.java b/app/src/com/hanju/video/app/util/ad/FullVideoAdManager.java
index 687099d..f280e6a 100644
--- a/app/src/com/hanju/video/app/util/ad/FullVideoAdManager.java
+++ b/app/src/com/hanju/video/app/util/ad/FullVideoAdManager.java
@@ -2,13 +2,19 @@
 
 import android.app.Activity;
 import android.content.Context;
+import android.util.Log;
 
 import com.bytedance.sdk.openadsdk.AdSlot;
 import com.bytedance.sdk.openadsdk.TTAdConstant;
 import com.bytedance.sdk.openadsdk.TTAdManager;
 import com.bytedance.sdk.openadsdk.TTAdNative;
 import com.bytedance.sdk.openadsdk.TTFullScreenVideoAd;
+import com.hanju.video.app.ui.media.VideoDetailActivity;
 import com.hanju.video.app.util.common.DimenUtils;
+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;
 
 public class FullVideoAdManager {
 
@@ -24,21 +30,45 @@
         return fullVideoAdManager;
     }
 
-    public void loadAd(final Context context, String pid, final IFullVideoAdListener adListener) {
-        int w = DimenUtils.getScreenWidth(context);
-        int h = DimenUtils.getScreenHeight(context);
+    public void loadAd(final Activity context, AdUtil.AD_TYPE adType, String pid, final IFullVideoAdListener adListener) {
+
+        if (adType == AdUtil.AD_TYPE.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(pid)
                 .setSupportDeepLink(true)
                 .setExpressViewAcceptedSize(w, h)
                 .setOrientation(TTAdConstant.VERTICAL)
                 .build();
-        TTAdManager ttAdManager = TTAdManagerHolder.get();
-        mTTAdNative = ttAdManager.createAdNative(context);
+        TTAdManager ttAdManager = null;
+        try {
+            ttAdManager = TTAdManagerHolder.get();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+
+        if (ttAdManager == null) {
+            return;
+        }
+
+
+        mTTAdNative = ttAdManager.createAdNative(activity);
         //鍔犺浇鍏ㄥ睆瑙嗛
         mTTAdNative.loadFullScreenVideoAd(adSlot, new TTAdNative.FullScreenVideoAdListener() {
             @Override
             public void onError(int code, String message) {
+                adListener.onFail(message);
             }
 
             @Override
@@ -56,6 +86,7 @@
 
                     @Override
                     public void onAdClose() {
+                        adListener.onFinish();
                     }
 
                     @Override
@@ -69,8 +100,6 @@
 
                 });
 
-                if (ad != null && adListener != null)
-                    adListener.onSuccess();
             }
 
             @Override
@@ -79,35 +108,85 @@
 
             @Override
             public void onFullScreenVideoCached(TTFullScreenVideoAd ttFullScreenVideoAd) {
+                ttFullScreenVideoAd.showFullScreenVideoAd(activity);
+            }
+        });
+
+
+    }
+
+
+    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();
     }
 
-
-    /**
-     * 灞曠ず骞垮憡
-     *
-     * @param activity
-     */
-    public void showAd(Activity activity) {
-        if (mttFullVideoAd != null) {
-            mttFullVideoAd.showFullScreenVideoAd(activity);
-            mttFullVideoAd = null;
-        }
-    }
-
-    /**
-     * 鏄惁宸茬粡缂撳瓨浜嗗箍鍛�
-     *
-     * @return
-     */
-    public boolean isCacahed() {
-        return mttFullVideoAd != null;
-    }
 
     public interface IFullVideoAdListener {
-        void onSuccess();
+        void onFail(String msg);
+        void onFinish();
     }
 
 }

--
Gitblit v1.8.0