admin
2021-12-21 fd0097a37e24c771d5ad271135e48e8f52e325e0
BuWanVideo/src/com/weikou/beibeivideo/util/ad/FullVideoAdManager.java
@@ -2,6 +2,7 @@
import android.app.Activity;
import android.content.Context;
import android.os.Build;
import android.widget.Toast;
import com.bytedance.sdk.openadsdk.AdSlot;
@@ -9,6 +10,11 @@
import com.bytedance.sdk.openadsdk.TTAdManager;
import com.bytedance.sdk.openadsdk.TTAdNative;
import com.bytedance.sdk.openadsdk.TTFullScreenVideoAd;
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.ads.interstitial2.UnifiedInterstitialMediaListener;
import com.qq.e.comm.util.AdError;
import com.weikou.beibeivideo.util.DimenUtils;
public class FullVideoAdManager {
@@ -16,6 +22,9 @@
    private TTAdNative mTTAdNative = null;
    private TTFullScreenVideoAd mttFullVideoAd;
    //广点通广告
    private UnifiedInterstitialAD iad;
    private static FullVideoAdManager fullVideoAdManager;
@@ -25,7 +34,16 @@
        return fullVideoAdManager;
    }
    public void loadAd(final Context context, final IFullVideoAdListener adListener) {
    public void loadAd(final Activity context, final IFullVideoAdListener adListener) {
        //获取当前SDK版本
        if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT_WATCH) {
            loadCSJ(context, adListener);
        } else {
            loadGDT(context, adListener);
        }
    }
    private void loadCSJ(final Context context, final IFullVideoAdListener adListener) {
        int w = DimenUtils.getScreenWidth(context);
        int h = DimenUtils.getScreenHeight(context);
        AdSlot adSlot = new AdSlot.Builder()
@@ -34,7 +52,13 @@
                .setExpressViewAcceptedSize(w, h)
                .setOrientation(TTAdConstant.VERTICAL)
                .build();
        TTAdManager ttAdManager = TTAdManagerHolder.get();
        TTAdManager ttAdManager = null;
        try {
            ttAdManager = TTAdManagerHolder.get();
        } catch (Exception e) {
            e.printStackTrace();
            return;
        }
        mTTAdNative = ttAdManager.createAdNative(context);
        //加载全屏视频
        mTTAdNative.loadFullScreenVideoAd(adSlot, new TTAdNative.FullScreenVideoAdListener() {
@@ -86,6 +110,123 @@
    }
    public void loadGDT(final Activity context, final IFullVideoAdListener adListener) {
        String posId = GDTConstant.PID_2_VIDEO_DETAIL_INTERSTITIAL;
        iad = new UnifiedInterstitialAD(context, posId, new UnifiedInterstitialADListener() {
            @Override
            public void onADReceive() {
                if (context != null) {
                    context.runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            if (iad != null)
                                iad.show(context);
                        }
                    });
                }
            }
            @Override
            public void onVideoCached() {
            }
            @Override
            public void onNoAD(AdError adError) {
            }
            @Override
            public void onADOpened() {
            }
            @Override
            public void onADExposure() {
            }
            @Override
            public void onADClicked() {
            }
            @Override
            public void onADLeftApplication() {
            }
            @Override
            public void onADClosed() {
            }
            @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.setMediaListener(new UnifiedInterstitialMediaListener() {
            @Override
            public void onVideoInit() {
            }
            @Override
            public void onVideoLoading() {
            }
            @Override
            public void onVideoReady(long l) {
            }
            @Override
            public void onVideoStart() {
            }
            @Override
            public void onVideoPause() {
            }
            @Override
            public void onVideoComplete() {
            }
            @Override
            public void onVideoError(AdError adError) {
            }
            @Override
            public void onVideoPageOpen() {
            }
            @Override
            public void onVideoPageClose() {
            }
        });
        iad.loadAD();
    }
    /**
     * 展示广告
     *