package com.demo.app;
|
|
import android.app.Application;
|
import android.content.Context;
|
|
import com.bytedance.sdk.dp.DPSdkConfig;
|
import com.bytedance.sdk.openadsdk.TTAdSdk;
|
import com.demo.app.utils.Constant;
|
import com.demo.app.utils.UserUtil;
|
import com.demo.library_ad.AdUtil;
|
import com.demo.library_dp.DPUtil;
|
import com.demo.lib.common.util.ManifestDataUtil;
|
import com.umeng.analytics.MobclickAgent;
|
import com.umeng.commonsdk.UMConfigure;
|
|
import androidx.multidex.MultiDex;
|
|
public class MyApplication extends Application {
|
public static MyApplication application = null;
|
public static boolean inited = false;
|
|
private static String TAG = "MyApplication";
|
|
//兼容4.4以下版本
|
protected void attachBaseContext(Context newBase) {
|
super.attachBaseContext(newBase);
|
MultiDex.install(this);
|
}
|
|
|
@Override
|
public void onCreate() {
|
super.onCreate();
|
application = this;
|
MultiDex.install(this);
|
if (UserUtil.isAgreeUserProtocol(application) || Constant.DEBUG) {
|
init(application, null);
|
}
|
}
|
|
public static void init(Application application, InitListener initListener) {
|
if (inited) {
|
return;
|
}
|
|
inited = true;
|
//友盟初始化
|
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);
|
|
initAd(application, initListener);
|
|
//小说
|
initNovel(application);
|
//穿山甲小视频
|
initDPSDK(application);
|
}
|
|
|
//动态初始化广告
|
public static void initAd(Application application, InitListener initListener) {
|
//广点通广告
|
AdUtil.initGDTAd(application, application.getString(R.string.ad_gdt_appid));
|
//穿山甲广告
|
initCSJAd(application, application.getString(R.string.ad_csj_appid), initListener);
|
}
|
|
|
/**
|
* 穿山甲广告初始化
|
*/
|
private static void initCSJAd(Application application, String appId, InitListener initListener) {
|
|
AdUtil.initCSJAd(application, appId, false, 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) {
|
DPUtil.initNovel(application, "SDK_Setting_5211168.json");
|
}
|
|
private static boolean dpSDKIninted;
|
|
public static void initDPSDK(Application application) {
|
if (!dpSDKIninted) {
|
DPUtil.initDPSDK(application, "SDK_Setting_5211168.json", new DPSdkConfig.InitListener() {
|
@Override
|
public void onInitComplete(boolean b) {
|
dpSDKIninted = b;
|
}
|
});
|
}
|
}
|
|
|
public interface InitListener {
|
public void onFinish();
|
}
|
}
|