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