From dbff6d6f9200417ea60e2fe507b79cbe2eb7ea32 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 11 一月 2024 18:19:48 +0800
Subject: [PATCH] 2024年01月11日18:19:42

---
 app/src/main/java/com/hdl/photovoltaic/HDLApp.java |  150 +++++++++++++++++++++++++++++++++++--------------
 1 files changed, 107 insertions(+), 43 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
index 3a2a0d8..8b72d3c 100644
--- a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
+++ b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -1,15 +1,8 @@
 package com.hdl.photovoltaic;
 
 import android.app.Application;
-import android.content.ComponentName;
-import android.content.Context;
 import android.content.Intent;
-import android.content.ServiceConnection;
-import android.content.res.Configuration;
-import android.content.res.Resources;
-import android.os.IBinder;
 import android.text.TextUtils;
-import android.util.DisplayMetrics;
 
 
 import com.hdl.hdlhttp.HxHttpConfig;
@@ -18,35 +11,34 @@
 import com.hdl.linkpm.sdk.user.callback.IOnReloginListener;
 import com.hdl.linkpm.sdk.utils.HDLSDKSPUtils;
 import com.hdl.photovoltaic.config.AppConfigManage;
+import com.hdl.photovoltaic.config.ConstantManage;
 import com.hdl.photovoltaic.config.UserConfigManage;
-import com.hdl.photovoltaic.internet.HttpServer.MyNanoHttpServer;
-import com.hdl.photovoltaic.internet.HttpServer.MyNanoHttpService;
-import com.hdl.photovoltaic.other.HdlFileLogic;
-import com.hdl.photovoltaic.other.HdlOtaLogic;
+import com.hdl.photovoltaic.enums.NetworkType;
+import com.hdl.photovoltaic.other.HdlLogLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
 import com.hdl.photovoltaic.ui.HomeLoginActivity;
 import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
 import com.hdl.photovoltaic.utils.AppManagerUtils;
 import com.hdl.photovoltaic.utils.LocalManageUtil;
+import com.hdl.photovoltaic.utils.NetworkUtils;
 import com.hdl.photovoltaic.utils.SharedPreUtils;
 import com.hdl.sdk.link.HDLLinkLocalSdk;
+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 org.greenrobot.eventbus.EventBus;
+
 import java.util.HashMap;
-import java.util.Locale;
 import java.util.Objects;
 
+import cn.jpush.android.api.JPushInterface;
 import io.dcloud.common.util.RuningAcitvityUtil;
 import okhttp3.logging.HttpLoggingInterceptor;
 
 public class HDLApp extends Application {
 
-    /**
-     * 榛樿涓枃
-     */
-    public String currentAppLanguage = "zh";
     //鎺у埗鎵撳嵃 Debug妯″紡鎵撳嵃
     private Boolean isLogEnabled = true;
     //涓夋柟sdk鍒濆鍖栨爣璇�
@@ -69,21 +61,21 @@
         SharedPreUtils.init(this);
         getAppLanguage();
         initThirdSDK();
+//        appLocationInfo();
+
     }
 
     public void getAppLanguage() {
-        String language = SharedPreUtils.getSharedPreferencesKey("language");
+        String language = UserConfigManage.getInstance().getCurrentAppLanguage();
         if (TextUtils.isEmpty(language)) {
             //浠庡唴瀛橀噷闈㈣幏鍙栦笉鍒拌瑷�,鑾峰彇褰撳墠绯荤粺鐨�;
             String str = getResources().getConfiguration().locale.getCountry();
             if (str.equals("CN") || str.equals("TW")) {
-                language = "zh";
+                UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.zh);
             } else {
-                language = "en";
+                UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.en);
             }
         }
-        currentAppLanguage = language;
-
     }
 
     public void setInfoMap(String key, String value) {
@@ -108,6 +100,10 @@
         return "";
     }
 
+    public void removeKey(String key) {
+        mInfoMap.remove(key);
+    }
+
     /**
      * 鍒濆鍖栦笁鏂圭浉鍏砈DK
      */
@@ -125,23 +121,27 @@
 //        CrashReport.initCrashReport(this, Constant.BUGLY_APP_ID, true);
         //6.鍒濆鍖朌CUniMPSDK
         initDCUniMPSDK();
-
+//        this.initUniMqtt();//濡傛灉鏄儴缃插埌/鎵嬫満涓婃寮忎娇鐢紝娉ㄩ噴鎺夎繖琛屼唬鐮佸氨鍙�
 //        //7.鍒濆鍖栬嚜瀹氫箟IconToast
 //        ToastUtils.getInstance().initIconToast(this);
 //        //8.瀵筬astjson杩涜璁剧疆锛岃В鍐砯astjosn杞崲鎴愬瓧绗︿覆鏃堕瀛楁瘝澶у皬鍐欓棶棰�
 //        TypeUtils.compatibleWithFieldName = true;
 //        //9.鍒濆鍖栫綉缁滃伐鍏�
 //        NetWorkUtil.init(this);
-//        //10.鍒濆鍖栨瀬鍏夋帹閫�
-//        initJPush();
+        //鍒濆鍖栨瀬鍏夋帹閫�
+        initJPush();
         initHDLLinkPMSdk();
         HDLLinkLocalSdk.getInstance().init(getInstance());
         initSocket();
         //4.鍒濆鍖朞KHttpLog 鏄惁寮�鍚�
         setOKHttpLogOpen(isLogEnabled);
-
+        //鐩戝惉缃戠粶鐘舵�佸彉鍖�
+        this.networkMonitoring();
+        //鍒濆鍖栨湰鍦癮ssets鏂囦欢澶硅祫婧愭枃浠�
+        this.initLocalAssetsData();
 
     }
+
 
     /**
      * 鍒濆鍖朒DLLinkPMSdk
@@ -151,13 +151,20 @@
         HDLLinkPMSdk.initWithAppKey(getInstance(), AppConfigManage.getAppKey(), AppConfigManage.getAppSecret(), AppConfigManage.getAPPRegionUrl());
         //2.璁剧疆鎵撳嵃
         HDLLinkPMSdk.setLogEnabled(isLogEnabled);
-        //3.閰嶇疆鎺ュ彛璇锋眰璇█
-        Locale locale = LocalManageUtil.getSystemLocale(this);
-        if (!locale.getLanguage().equals("zh")) {
-            HDLLinkPMSdk.setLanguage("en");
-        } else {
-            HDLLinkPMSdk.setLanguage("cn");
+        if (TextUtils.isEmpty(UserConfigManage.getInstance().getCurrentAppLanguage())) {
+            //榛樿閰嶇疆鎺ュ彛璇锋眰璇█鏄腑鏂�
+            UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.zh);
         }
+        //3.閰嶇疆鎺ュ彛璇锋眰璇█
+        HDLLinkPMSdk.setLanguage(UserConfigManage.getInstance().getCurrentAppLanguage());
+
+//        //3.閰嶇疆鎺ュ彛璇锋眰璇█
+//        Locale locale = LocalManageUtil.getSystemLocale(this);
+//        if (!locale.getLanguage().equals("zh")) {
+//            HDLLinkPMSdk.setLanguage("en");
+//        } else {
+//            HDLLinkPMSdk.setLanguage("zh");
+//        }
 //        HDLLinkPMSdk.setLanguage("en");//寮哄埗浣跨敤鑻辨枃
         //4.鐩戝惉鐧诲嚭澶勭悊
         HDLLinkPMUser.getInstance().setOnReloginListener(new IOnReloginListener() {
@@ -222,19 +229,76 @@
         }
     }
 
+    /**
+     * 鍒濆鍖栨瀬鍏塖DK
+     */
+    private void initJPush() {
+        JPushInterface.setDebugMode(true);
+        JPushInterface.init(getBaseContext());
 
-//    /**
-//     * 鍒濆鍖杣ni app mqtt
-//     */
-//    private void initUniMqtt() {
-//        try {
-//            Through.getInstance().setUni(false);
-//            //IP 鍦板潃瑕佹牴鎹疄闄呯殑鏇存敼
-//            UniAppMqtt.getInstance().initMqtt(this, "tcp://192.168.3.124:1883", "Android_" + android.os.Build.BRAND + "_" + this.hashCode(), new String[]{"PCToAndroid/#"});
-//        } catch (Exception e) {
-//            LogUtils.e("娴嬭瘯Mqtt杩炴帴鏈嶅姟绔け璐�");
-//        }
-//    }
+    }
 
+    /**
+     * 鐩戝惉缃戠粶鐘舵�佸彉鍖�
+     */
+    private void networkMonitoring() {
+        NetworkUtils.init(getInstance());
+        NetworkUtils.registerNetworkStatusChangedListener(new NetworkUtils.OnNetworkStatusChangedListener() {
+            @Override
+            public void onDisconnected() {
+                BaseEventBus baseEventBus = new BaseEventBus();
+                baseEventBus.setTopic(ConstantManage.network_change_post);
+                baseEventBus.setType(NetworkType.no_network.toString());
+                baseEventBus.setData("褰撳墠鏃犵綉缁滆繛鎺�");
+                EventBus.getDefault().post(baseEventBus);
+            }
+
+            @Override
+            public void onConnected(NetworkUtils.NetworkType networkType) {
+                BaseEventBus mobile_network = new BaseEventBus();
+                mobile_network.setTopic(ConstantManage.network_change_post);
+                mobile_network.setType(networkType.toString());
+                mobile_network.setData("姝e湪浣跨敤2G/3G/4G缃戠粶/wifi");
+                EventBus.getDefault().post(mobile_network);
+            }
+        });
+    }
+
+
+    /**
+     * 璇诲彇鍔犺浇鏈湴閰嶇疆鏂囦欢鏁版嵁
+     */
+    private void initLocalAssetsData() {
+        //鏁版嵁澶氭湁鐐瑰崱,鎵�浠ュ姞浜嗙嚎绋�
+        HdlThreadLogic.runSubThread(new Runnable() {
+            @Override
+            public void run() {
+                //鑾峰彇鍥藉鐪佸競鏁版嵁
+                LocalManageUtil.getLocationInfo(getInstance());
+                //鑾峰彇缁忕含搴�
+                LocalManageUtil.getLongLatInfo(getInstance());
+            }
+        });
+
+
+    }
+
+
+    /**
+     * 鍒濆鍖杣ni app mqtt
+     */
+    private void initUniMqtt() {
+        try {
+            String ip = NetworkUtils.getIPAddress(this);
+            if (TextUtils.isEmpty(ip)) {
+                return;
+            }
+            //IP 鍦板潃瑕佹牴鎹疄闄呯殑鏇存敼
+            com.hdl.photovoltaic.ui.test.UniAppMqtt.getInstance().initMqtt(this, "tcp://" + ip + ":1883", "Android_" + android.os.Build.BRAND + "_" + this.hashCode(), new String[]{"PCToAndroid/#"});
+            com.hdl.photovoltaic.ui.test.UniAppMqtt.getInstance().setUni(true);
+        } catch (Exception e) {
+            HdlLogLogic.print("娴嬭瘯Mqtt杩炴帴鏈嶅姟绔け璐�--->");
+        }
+    }
 
 }

--
Gitblit v1.8.0