wjc
2025-04-25 a17869744eeea710c9ee15eadb3837cd4ed0bcd7
app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -41,6 +41,8 @@
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
import com.hdl.sdk.link.core.connect.HDLUdpConnect;
import com.hdl.sdk.link.core.utils.QueueUtils;
import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
import com.umeng.commonsdk.UMConfigure;
import org.greenrobot.eventbus.EventBus;
@@ -90,14 +92,16 @@
        //预创建脚本json文件夹
        HdlFileLogic.getInstance().createHdlESLocalJsonDirectory();
        init();
    }
    public void getAppLanguage() {
        String language = UserConfigManage.getInstance().getCurrentAppLanguage();
        if (TextUtils.isEmpty(language)) {
            //从内存里面获取不到语言,获取当前系统的;
            String str = getResources().getConfiguration().locale.getCountry();
            if (str.equals("CN") || str.equals("TW")) {
            String str = getResources().getConfiguration().locale.getLanguage();
            if (str.equals(LocalManageUtil.zh)) {
                UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.zh);
            } else {
                UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.en);
@@ -167,8 +171,23 @@
        this.networkMonitoring();
        //初始化本地assets文件夹资源文件
//        this.initLocalAssetsData();
        //初始化友盟SDK
        initUMengSDK();
    }
    /**
     * 初始化友盟SDK,抓闪退日志
     * 集成教程地址:https://developer.umeng.com/docs/119267/detail/118588
     */
    private void initUMengSDK() {
        UMConfigure.preInit(this, "6801aec0bc47b67d833fd76d", "XenterraSolar");
        //appkey和channl必须保持和预初始化一致!!!
        //deviceType:设备类型,UMConfigure.DEVICE_TYPE_PHONE为手机、UMConfigure.DEVICE_TYPE_BOX为盒子
        //pushSecret:Push推送业务的secret
        UMConfigure.init(this, "6801aec0bc47b67d833fd76d", "XenterraSolar", UMConfigure.DEVICE_TYPE_PHONE, "");
        UMConfigure.setLogEnabled(false);//AppConfigManage.isDebug()
    }
@@ -180,6 +199,7 @@
        HDLLinkPMSdk.initWithAppKey(this, AppConfigManage.getAppKey(), AppConfigManage.getAppSecret(), AppConfigManage.getAPPRegionUrl());
        //2.设置打印
        HDLLinkPMSdk.setLogEnabled(isLogEnabled);
        if (TextUtils.isEmpty(UserConfigManage.getInstance().getCurrentAppLanguage())) {
            //默认配置接口请求语言是英文
            UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.en);
@@ -199,11 +219,13 @@
        HDLLinkPMUser.getInstance().setOnReloginListener(new IOnReloginListener() {
            @Override
            public void onReLogin(int type) {
                HdlLogLogic.print("退到登录界面---" + type, true);
                HdlLogLogic.print("监听到登录退出---" + type, true);
                //type:  0:正常退出   1:极光推送强制退出
                //收到登录处理通知,关闭所有页面并打开登录页面
                AppManagerUtils.getAppManager().finishAllActivity();
//                HDLSDKSPUtils.clear();//底层自己清空
                HdlLogLogic.print("页面大小---" + AppManagerUtils.getAppManager().getActivitySize());
                //重新登陆,默认同意隐私政策
                UserConfigManage.getInstance().setAcceiptPolicy(false);
@@ -221,10 +243,10 @@
                if (mInfoMap != null) {
                    mInfoMap.clear();
                }
//                //断开mqtt连接
//                if (MqttRecvClient.getInstance() != null) {
//                    MqttRecvClient.getInstance().disConnect();
//                }
                //断开mqtt连接
                if (MqttRecvClient.getInstance() != null) {
                    MqttRecvClient.getInstance().disConnect();
                }
                //断开所有tcp连接且清空连接缓存
                // TODO: 10/10/23
//                TcpSocketBoot.stopAllConnectLinkGateway();
@@ -239,6 +261,7 @@
                    intent.putExtra("isJpush", true);
                }
                startActivity(intent);
                HdlLogLogic.print("页面大小---" + AppManagerUtils.getAppManager().getActivitySize());
            }
        });
@@ -345,6 +368,7 @@
        });
    }
    /**
     * 初始化uni app mqtt
     */
@@ -362,6 +386,7 @@
        }
    }
    @Override
    protected void attachBaseContext(Context base) {
        MultiDex.install(base);
@@ -371,6 +396,23 @@
    /**
     * 支持中英文切换
     */
    public Context getAppLocaleContext(Context context) {
        try {
            Locale locale = new Locale(UserConfigManage.getInstance().getCurrentAppLanguage());
            Configuration configuration = context.getResources().getConfiguration();
            configuration.setLocale(locale);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
                configuration.setLocales(new LocaleList(locale));
            }
            return context.createConfigurationContext(configuration);
        } catch (Exception e) {
            return context;
        }
    }
    /**
     * 支持中英文切换
     */
    public Context getAppLocaleContext() {
        try {
            Locale locale = new Locale(UserConfigManage.getInstance().getCurrentAppLanguage());