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/HanJuApplication.java |  140 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 121 insertions(+), 19 deletions(-)

diff --git a/app/src/com/hanju/video/app/HanJuApplication.java b/app/src/com/hanju/video/app/HanJuApplication.java
index 4c5b2a6..4cb09ab 100644
--- a/app/src/com/hanju/video/app/HanJuApplication.java
+++ b/app/src/com/hanju/video/app/HanJuApplication.java
@@ -5,21 +5,33 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
-
-import androidx.multidex.MultiDex;
-
+import android.os.Build;
+import android.telephony.TelephonyManager;
 import android.util.Log;
 
-import com.hanju.video.app.util.common.AppConfigUtil;
+import com.bytedance.novel.pangolin.NovelConfig;
+import com.bytedance.novel.pangolin.NovelSDK;
+import com.bytedance.novel.pangolin.PangolinDocker;
+import com.bytedance.novel.pangolin.data.NormalFontType;
+import com.bytedance.novel.pangolin.data.ReaderFontType;
+import com.bytedance.sdk.dp.DPSdk;
+import com.bytedance.sdk.dp.DPSdkConfig;
+import com.bytedance.sdk.openadsdk.TTAdSdk;
+import com.hanju.lib.library.util.ManifestDataUtil;
+import com.hanju.lib.library.util.common.PackageUtils2;
 import com.hanju.video.app.util.HanJuConstant;
 import com.hanju.video.app.util.UserUtil;
+import com.hanju.video.app.util.ad.AdUtil;
+import com.hanju.video.app.util.ad.TTAdManagerHolder;
+import com.hanju.video.app.util.common.AppConfigUtil;
+import com.hanju.video.app.util.common.CrashHandler;
 import com.hanju.video.app.util.downutils.StringUtils;
-import com.hanju.lib.library.util.ManifestDataUtil;
+import com.hanju.video.app.util.ui.SDCardUtil;
 import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
 import com.nostra13.universalimageloader.core.ImageLoader;
 import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
 import com.nostra13.universalimageloader.core.assist.QueueProcessingType;
-import com.qq.e.comm.managers.GDTADManager;
+import com.qq.e.comm.managers.GDTAdSdk;
 import com.tencent.mm.opensdk.constants.ConstantsAPI;
 import com.tencent.mm.opensdk.openapi.IWXAPI;
 import com.tencent.mm.opensdk.openapi.WXAPIFactory;
@@ -28,8 +40,8 @@
 import com.umeng.commonsdk.UMConfigure;
 import com.umeng.socialize.PlatformConfig;
 import com.umeng.socialize.UMShareAPI;
-import com.hanju.video.app.util.common.CrashHandler;
-import com.hanju.video.app.util.ad.TTAdManagerHolder;
+
+import androidx.multidex.MultiDex;
 
 public class HanJuApplication extends Application {
     public static HanJuApplication application = null;
@@ -38,7 +50,16 @@
     public static String MMNumber;
     public static IWXAPI mWxApi = null;
 
+    public static boolean inited = false;
+
     private static int mStatusBarHeight;
+    private static String TAG = "HanJuApplication";
+
+    //鍏煎4.4浠ヤ笅鐗堟湰
+    protected void attachBaseContext(Context newBase) {
+        super.attachBaseContext(newBase);
+        MultiDex.install(this);
+    }
 
 
     @Override
@@ -49,15 +70,27 @@
         }
         application = this;
         MultiDex.install(this);
-        if (UserUtil.isAgreeUserProtocol(application)) {
-            init(application);
+        if (UserUtil.isAgreeUserProtocol(application) || HanJuConstant.DEBUG) {
+            init(application, null);
         }
     }
 
-    public static void init(Application application) {
+    public static void init(Application application, InitListener initListener) {
+        inited = true;
+        try {
+            TelephonyManager manager = (TelephonyManager) application.getSystemService(TELEPHONY_SERVICE);
+            String model = Build.MODEL;
+            HanJuApplication.deviceName = model;
+            HanJuApplication.deviceNumber = manager.getDeviceId();
+        } catch (Exception e) {
+        }
+
+        SDCardUtil.initStorage(application);
+
         //鍙嬬洘鍒濆鍖�
         String description = ManifestDataUtil.getAppMetaData(application, "UMENG_CHANNEL");
         UMConfigure.init(application, application.getResources().getString(R.string.umeng_key), description, UMConfigure.DEVICE_TYPE_PHONE, null);
+        UMConfigure.setEncryptEnabled(true);
         // 閫夌敤AUTO椤甸潰閲囬泦妯″紡
         MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.AUTO);
         UMShareAPI.get(application);
@@ -69,14 +102,15 @@
         initWX(application);
         String gdtAppId = AppConfigUtil.getGDTAppId(application);
         String csjAppId = AppConfigUtil.getCSJAppId(application);
-        initAd(application, gdtAppId, csjAppId);
+        initAd(application, gdtAppId, csjAppId, initListener);
+
     }
 
-    public static void initAd(Application context, String gdtAppId, String csjAppId) {
+    public static void initAd(Application context, String gdtAppId, String csjAppId, InitListener initListener) {
         if (!StringUtils.isNullOrEmpty(gdtAppId))
-            GDTADManager.getInstance().initWith(context, gdtAppId);
+            GDTAdSdk.init(context, gdtAppId);
         if (!StringUtils.isNullOrEmpty(csjAppId))
-            initCSJAd(context, csjAppId);
+            initCSJAd(context, csjAppId, initListener);
     }
 
 
@@ -115,25 +149,93 @@
 
             @Override
             public void onViewInitFinished(boolean arg0) {
-                // TODO Auto-generated method stub
                 //x5鍏ф牳鍒濆鍖栧畬鎴愮殑鍥炶皟锛屼负true琛ㄧずx5鍐呮牳鍔犺浇鎴愬姛锛屽惁鍒欒〃绀簒5鍐呮牳鍔犺浇澶辫触锛屼細鑷姩鍒囨崲鍒扮郴缁熷唴鏍搞��
                 Log.d("app", " onViewInitFinished is " + arg0);
             }
 
             @Override
             public void onCoreInitFinished() {
-                // TODO Auto-generated method stub
             }
         };
         //x5鍐呮牳鍒濆鍖栨帴鍙�
         QbSdk.initX5Environment(application, cb);
+        QbSdk.canGetDeviceId(false);
+        QbSdk.canGetAndroidId(false);
+        QbSdk.canGetSubscriberId(false);
+
+        initNovel(application);
+        initDPSDK(application);
     }
 
 
     /**
      * 绌垮北鐢插箍鍛婂垵濮嬪寲
      */
-    private static void initCSJAd(Application application, String appId) {
-        TTAdManagerHolder.init(application, appId);
+    private static void initCSJAd(Application application, String appId, InitListener initListener) {
+        TTAdManagerHolder.init(application, appId, new TTAdSdk.InitCallback() {
+            @Override
+            public void success() {
+                if (initListener != null)
+                    initListener.onFinish();
+            }
+
+            @Override
+            public void fail(int i, String s) {
+                if (initListener != null)
+                    initListener.onFinish();
+            }
+        });
+    }
+
+
+    private static void initNovel(Application application) {
+        if (!AdUtil.isCanInitCSJ()) {
+            return;
+        }
+
+        NovelConfig config = new NovelConfig.Builder()
+                .appName(application.getString(R.string.app_name)) //鎺ュ叆灏忚SDK鐨凙pp鐨勮嫳鏂囧悕 蹇呭~
+                .appVersionName(PackageUtils2.getVersionName(application)) //鎺ュ叆灏忚SDKApp鐨勭増鏈悕绉� 蹇呭~
+                .appVersionCode(PackageUtils2.getVersionCode(application)) //鎺ュ叆灏忚SDK App鐨勭増鏈彿 蹇呭~
+                .channel(ManifestDataUtil.getAppMetaData(application, "UMENG_CHANNEL")) //娓犻亾鍙风淮搴︺�傚紑鍙戣�呰嚜瀹氫箟瀛楃涓插嵆鍙�(寤鸿涓嶈鍖呭惈test)銆傞�夊~
+                .initInnerApplog(true) // 鏄惁浣跨敤灏忚sdk鏉ュ垵濮嬪寲applog sdk銆傞粯璁や负false锛岄渶瑕佸紑鍙戣�呭湪App涓崟鐙垵濮嬪寲applog sdk锛屼笖蹇呴』鍦ㄥ皬璇磗dk涔嬪墠鍒濆鍖栥��
+                .initInnerOpenAdSdk(true) //鏄惁浣跨敤灏忚sdk鏉ュ垵濮嬪寲骞垮憡sdk锛屽鏋滀负true锛岄渶瑕佽缃畇iteId銆傞粯璁や负false锛岄渶寮�鍙戣�呭湪App涓崟鐙垵濮嬪寲骞垮憡sdk骞跺湪灏忚sdk涔嬪墠鍒濆鍖栥��
+                .jsonFileName("SDK_Setting_5211168.json")//json閰嶇疆鏂囦欢鐨勫悕绉� 蹇呭~
+                .normalFontSize(NormalFontType.NORMAL) //鍏ㄥ眬瀛楀彿澶у皬 鍙��
+                .readerFontSize(ReaderFontType.TWO) //闃呰鍣ㄥ瓧鍙峰ぇ灏� 鍙��
+                .build();
+        NovelSDK.INSTANCE.attach(new PangolinDocker(config), application);
+    }
+
+    private static boolean dpSDKIninted;
+
+    public static void initDPSDK(Application application) {
+        if (!AdUtil.isCanInitCSJ()) {
+            return;
+        }
+        if (!dpSDKIninted) {
+            DPSdkConfig.Builder configBuilder = new DPSdkConfig.Builder()
+                    .debug(true)
+                    .preloadDraw(true)
+                    .needInitAppLog(false)
+                    .setIsAndroidx(true)
+                    .initListener(new DPSdkConfig.InitListener() {
+                        @Override
+                        public void onInitComplete(boolean b) {
+                            dpSDKIninted = b;
+                        }
+                    }) //鎺ュ叆浜嗙孩鍖呭姛鑳介渶瑕佷紶鍏ョ殑鍙傛暟锛屾病鏈夋帴鍏ョ殑璇濆彲浠ュ拷鐣ヨ閰嶇疆
+//                    .luckConfig(new DPSdkConfig.LuckConfig().application(application).enableLuck(false))
+//                    .liveConfig(new DPSdkConfig.LiveConfig())
+
+                    ;//鑻ユ偍闇�瑕佹帴鍏ョ洿鎾紝鍙傝�冦�岀洿鎾帴鍏ユ枃妗c�嶏紱鍚﹀垯鍙拷鐣ユ鍙傛暟銆�
+            DPSdk.init(application, "SDK_Setting_5211168.json", configBuilder.build());
+        }
+
+    }
+
+
+    public interface InitListener {
+        public void onFinish();
     }
 }

--
Gitblit v1.8.0