admin
2022-05-07 4c7cde7ae5ed57335405459e47de4bbd2726c4ba
android/app/src/main/java/com/yeshi/makemoney/video/app/MyApplication.java
@@ -2,41 +2,44 @@
import android.app.Application;
import android.content.Context;
import android.content.Intent;
import com.bytedance.sdk.dp.DPSdkConfig;
import com.bytedance.sdk.openadsdk.TTAdSdk;
import com.demo.library_flutter.utils.FlutterPageUtil;
import com.google.gson.Gson;
import com.yeshi.makemoney.video.app.R;
import com.yeshi.makemoney.video.app.utils.Constant;
import com.yeshi.makemoney.video.app.utils.UserUtil;
import com.yeshi.makemoney.video.app.utils.api.HttpApiUtil;
import com.demo.lib.common.util.ManifestDataUtil;
import com.demo.library_ad.AdUtil;
import com.demo.library_dp.DPUtil;
import com.demo.lib.common.util.ManifestDataUtil;
import com.demo.library_flutter.FlutterCommonActivity;
import com.demo.library_flutter.message.AdMethodChannel;
import com.demo.library_flutter.message.DataMethodChannel;
import com.demo.library_flutter.message.UIMethodChannel;
import com.demo.library_flutter.nativeview.CSJExpressNativeViewFactory;
import com.demo.library_flutter.nativeview.DrawVideoNativeViewFactory;
import com.demo.library_flutter.nativeview.GDTExpressNativeViewFactory;
import com.demo.library_flutter.utils.FlutterPageUtil;
import com.google.gson.Gson;
import com.idlefish.flutterboost.FlutterBoost;
import com.idlefish.flutterboost.FlutterBoostDelegate;
import com.idlefish.flutterboost.FlutterBoostRouteOptions;
import com.idlefish.flutterboost.FlutterBoostSetupOptions;
import com.idlefish.flutterboost.containers.FlutterBoostActivity;
import com.umeng.analytics.MobclickAgent;
import com.umeng.commonsdk.UMConfigure;
import com.yeshi.makemoney.video.R;
import com.yeshi.makemoney.video.app.entity.eventbus.UpdateConfig;
import com.yeshi.makemoney.video.app.utils.AppConfigUtil;
import com.yeshi.makemoney.video.app.utils.Constant;
import com.yeshi.makemoney.video.app.utils.SettingUtil;
import com.yeshi.makemoney.video.app.utils.UserUtil;
import com.yeshi.makemoney.video.app.utils.api.HttpApiUtil;
import com.yeshi.makemoney.video.app.utils.ui.JumpPageUtil;
import org.greenrobot.eventbus.EventBus;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import androidx.multidex.MultiDex;
import cn.jpush.android.api.JPushInterface;
import io.flutter.Log;
import io.flutter.embedding.android.FlutterActivityLaunchConfigs;
import io.flutter.plugin.common.EventChannel;
import io.flutter.plugin.common.StandardMessageCodec;
import io.flutter.plugin.platform.PlatformViewRegistry;
@@ -59,13 +62,21 @@
        super.onCreate();
        application = this;
        MultiDex.install(this);
        if (UserUtil.isAgreeUserProtocol(application) || Constant.DEBUG) {
            init(application, null);
        }
//        if (UserUtil.isAgreeUserProtocol(application) || Constant.DEBUG) {
//            init(application, new InitListener() {
//                @Override
//                public void onFinish() {
//                    SettingUtil.initSettings(getApplicationContext());
//                }
//            });
//        }
    }
    public static void init(Application application, InitListener initListener) {
        if (inited) {
            if(initListener!=null) {
                initListener.onFinish();
            }
            return;
        }
@@ -88,6 +99,8 @@
                initDPSDK(application, initListener);
            }
        });
        initJPush(application);
    }
@@ -137,6 +150,8 @@
                    initListener.onFinish();
                }
            });
        } else {
            initListener.onFinish();
        }
    }
@@ -160,7 +175,7 @@
            @Override
            public void pushFlutterRoute(FlutterBoostRouteOptions options) {
                Log.i(TAG, "pushFlutterRoute");
                Log.i(TAG, "参数:"+new Gson().toJson(options.arguments()));
                Log.i(TAG, "参数:" + new Gson().toJson(options.arguments()));
                FlutterPageUtil.jumpPage(options.pageName(), options.arguments(), options.uniqueId());
            }
@@ -173,10 +188,11 @@
            PlatformViewRegistry registry = engine.getPlatformViewsController().getRegistry();
            registry.registerViewFactory("ad-csj-express-view", new CSJExpressNativeViewFactory(engine.getDartExecutor().getBinaryMessenger(), StandardMessageCodec.INSTANCE));
            registry.registerViewFactory("ad-gdt-express-view", new GDTExpressNativeViewFactory(engine.getDartExecutor().getBinaryMessenger(), StandardMessageCodec.INSTANCE));
            registry.registerViewFactory("ad-draw-video-view", new DrawVideoNativeViewFactory(engine.getDartExecutor().getBinaryMessenger(), StandardMessageCodec.INSTANCE));
            //数据接口
            new DataMethodChannel(engine.getDartExecutor().getBinaryMessenger(), application.getApplicationContext(), new DataMethodChannel.DataListener() {
                @Override
                public Map<String, Object> getBaseRequestParams(Map<String, Object> params) {
                public Map<String, String> getBaseRequestParams(Map<String, String> params) {
                    LinkedHashMap<String, String> ps = new LinkedHashMap<>();
                    if (params != null)
                        for (Iterator<String> its = params.keySet().iterator(); its.hasNext(); ) {
@@ -185,8 +201,53 @@
                                ps.put(key, params.get(key).toString());
                            }
                        }
                    HttpApiUtil.getRequestParams(application.getApplicationContext(), ps);
                    return null;
                    return HttpApiUtil.getRequestParams(application.getApplicationContext(), ps);
                }
                @Override
                public String getConfig(String key) {
                    AppConfigUtil.ConfigKey configKey = null;
                    try {
                        configKey = AppConfigUtil.ConfigKey.valueOf(key);
                    } catch (Exception e) {
                    }
                    if (configKey == null) {
                        EventBus.getDefault().post(new UpdateConfig());
                        return null;
                    }
                    return AppConfigUtil.getConfig(configKey, application);
                }
                @Override
                public Boolean getSetting(String key) {
                    SettingUtil.SettingKey settingKey = null;
                    try {
                        settingKey = SettingUtil.SettingKey.valueOf(key);
                    } catch (Exception e) {
                    }
                    if (settingKey == null) {
                        return null;
                    }
                    return SettingUtil.getSetting(settingKey, application);
                }
                @Override
                public void setSetting(String key, boolean b) {
                    SettingUtil.SettingKey settingKey = null;
                    try {
                        settingKey = SettingUtil.SettingKey.valueOf(key);
                    } catch (Exception e) {
                    }
                    if (settingKey == null) {
                        return;
                    }
                    SettingUtil.saveSetting(settingKey, b, application);
                }
            });
            //UI接口
@@ -194,6 +255,16 @@
                @Override
                public boolean isStatusBarDefaultLight() {
                    return true;
                }
                @Override
                public void jumpAppPage(String type, Map<String, Object> params) {
                    //跳转应用列表
                    if (JumpPageUtil.AppJumpType.valueOf(type) == null) {
                        //未知跳转类型
                        return;
                    }
                    JumpPageUtil.jump(JumpPageUtil.AppJumpType.valueOf(type), params, FlutterBoost.instance().currentActivity());
                }
            });
//            //广告接口
@@ -205,6 +276,11 @@
    }
    private static void initJPush(Application application) {
        JPushInterface.setDebugMode(true);
        JPushInterface.init(application);
    }
    public interface InitListener {
        public void onFinish();
    }