From cbd0384e4e68c3d838981aba0602c6d76fdc091b Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 22 四月 2025 19:26:28 +0800
Subject: [PATCH] Merge branch '1.5.1_google' into 1.5.2
---
app/src/main/java/com/hdl/photovoltaic/HDLApp.java | 169 ++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 133 insertions(+), 36 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
index 350f879..b4ba57d 100644
--- a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
+++ b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java
@@ -1,19 +1,20 @@
package com.hdl.photovoltaic;
+import android.app.Activity;
import android.app.Application;
import android.content.Context;
import android.content.Intent;
-import android.content.pm.PackageManager;
-import android.location.Location;
-import android.location.LocationListener;
-import android.location.LocationManager;
-import android.os.Bundle;
+import android.content.res.Configuration;
+import android.os.Build;
+import android.os.LocaleList;
+import android.os.SystemClock;
import android.text.TextUtils;
+import android.util.Log;
-import androidx.annotation.NonNull;
-import androidx.core.app.ActivityCompat;
+import androidx.multidex.MultiDex;
+import com.google.gson.Gson;
import com.hdl.hdlhttp.HxHttpConfig;
import com.hdl.linkpm.sdk.HDLLinkPMSdk;
import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
@@ -22,11 +23,15 @@
import com.hdl.photovoltaic.config.AppConfigManage;
import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
+import com.hdl.photovoltaic.enums.LowerTagType;
import com.hdl.photovoltaic.enums.NetworkType;
+import com.hdl.photovoltaic.other.HdlDeviceLogic;
+import com.hdl.photovoltaic.other.HdlFileLogic;
import com.hdl.photovoltaic.other.HdlLogLogic;
-import com.hdl.photovoltaic.other.HdlOtaLogic;
+import com.hdl.photovoltaic.other.HdlMessageLogic;
+import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
-import com.hdl.photovoltaic.ui.HomeLoginActivity;
+import com.hdl.photovoltaic.ui.LoginActivity;
import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.utils.LocalManageUtil;
@@ -46,7 +51,10 @@
import cn.jpush.android.api.JPushInterface;
import io.dcloud.common.util.RuningAcitvityUtil;
-import io.dcloud.common.util.net.NetWork;
+import me.jessyan.autosize.AutoSize;
+import me.jessyan.autosize.AutoSizeConfig;
+import me.jessyan.autosize.onAdaptListener;
+import me.jessyan.autosize.utils.ScreenUtils;
import okhttp3.logging.HttpLoggingInterceptor;
public class HDLApp extends Application {
@@ -55,10 +63,17 @@
private Boolean isLogEnabled = true;
//涓夋柟sdk鍒濆鍖栨爣璇�
private Boolean isInitThirdSDK = false;
+ //涓夋柟sdk鍒濆鍖栨爣璇�
+ /**
+ * 涓夋柟sdk鍒濆鍖栨爣璇�
+ * 鍦⊿tartActivity閲岄潰鍒濆鍖栦笁鏂筍DK鐨勬爣璇�
+ */
+ public Boolean isStartInitThirdSDK = false;
//澹版槑涓�涓綋鍓嶅簲鐢ㄧ殑瀹炰緥
private static HDLApp mHDLApp;
//澹版槑涓�涓叕鍏辩殑淇℃伅鏄犲皠,鍙綋浣滃叏灞�鍙橀噺浣跨敤;
public HashMap<String, String> mInfoMap = new HashMap<>();
+
//鍒╃敤鍗曚緥妯″紡鑾峰彇褰撳墠搴旂敤鐨勫敮涓�瀹炰緥
public static HDLApp getInstance() {
@@ -67,13 +82,16 @@
@Override
public void onCreate() {
-
super.onCreate();
+ // 鑾峰彇褰撳墠杩涚▼鐨凱ID
+ Log.d("杩涚▼===", android.os.Process.myPid() + "");
mHDLApp = this;
SharedPreUtils.init(this);
getAppLanguage();
- initThirdSDK();
-// appLocationInfo();
+ //棰勫垱寤鸿剼鏈琷son鏂囦欢澶�
+ HdlFileLogic.getInstance().createHdlESLocalJsonDirectory();
+ init();
+
}
@@ -81,8 +99,8 @@
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);
@@ -119,16 +137,15 @@
/**
* 鍒濆鍖栦笁鏂圭浉鍏砈DK
*/
- public void initThirdSDK() {
+ public void init() {
// 灏忕▼搴忚繘绋�
- if (RuningAcitvityUtil.getAppName(getBaseContext()).contains("unimp")) {
+ if (RuningAcitvityUtil.getAppName(getBaseContext()).contains(":")) {
return;
}
if (isInitThirdSDK) {
return;
}
isInitThirdSDK = true;
-
// //5.鍒濆鍖朆ugly
// CrashReport.initCrashReport(this, Constant.BUGLY_APP_ID, true);
//6.鍒濆鍖朌CUniMPSDK
@@ -140,17 +157,20 @@
// TypeUtils.compatibleWithFieldName = true;
// //9.鍒濆鍖栫綉缁滃伐鍏�
// NetWorkUtil.init(this);
- //鍒濆鍖栨瀬鍏夋帹閫�
- initJPush();
+ initAutoSize();
+// //鍒濆鍖栨瀬鍏夋帹閫�
+// initJPush();
initHDLLinkPMSdk();
HDLLinkLocalSdk.getInstance().init(getInstance());
initSocket();
//4.鍒濆鍖朞KHttpLog 鏄惁寮�鍚�
setOKHttpLogOpen(isLogEnabled);
+// initMqttClient();
//鐩戝惉缃戠粶鐘舵�佸彉鍖�
this.networkMonitoring();
//鍒濆鍖栨湰鍦癮ssets鏂囦欢澶硅祫婧愭枃浠�
- this.initLocalAssetsData();
+// this.initLocalAssetsData();
+
}
@@ -160,12 +180,13 @@
*/
private void initHDLLinkPMSdk() {
//1.鍒濆鍖朣DK
- HDLLinkPMSdk.initWithAppKey(getInstance(), AppConfigManage.getAppKey(), AppConfigManage.getAppSecret(), AppConfigManage.getAPPRegionUrl());
+ HDLLinkPMSdk.initWithAppKey(this, AppConfigManage.getAppKey(), AppConfigManage.getAppSecret(), AppConfigManage.getAPPRegionUrl());
//2.璁剧疆鎵撳嵃
HDLLinkPMSdk.setLogEnabled(isLogEnabled);
+
if (TextUtils.isEmpty(UserConfigManage.getInstance().getCurrentAppLanguage())) {
- //榛樿閰嶇疆鎺ュ彛璇锋眰璇█鏄腑鏂�
- UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.zh);
+ //榛樿閰嶇疆鎺ュ彛璇锋眰璇█鏄嫳鏂�
+ UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.en);
}
//3.閰嶇疆鎺ュ彛璇锋眰璇█
HDLLinkPMSdk.setLanguage(UserConfigManage.getInstance().getCurrentAppLanguage());
@@ -182,31 +203,42 @@
HDLLinkPMUser.getInstance().setOnReloginListener(new IOnReloginListener() {
@Override
public void onReLogin(int type) {
+ HdlLogLogic.print("鐩戝惉鍒扮櫥褰曢��鍑�---" + type, true);
//type: 0:姝e父閫�鍑� 1锛氭瀬鍏夋帹閫佸己鍒堕��鍑�
//鏀跺埌鐧诲綍澶勭悊閫氱煡锛屽叧闂墍鏈夐〉闈㈠苟鎵撳紑鐧诲綍椤甸潰
AppManagerUtils.getAppManager().finishAllActivity();
- HDLSDKSPUtils.clear();
+// HDLSDKSPUtils.clear();//搴曞眰鑷繁娓呯┖
//閲嶆柊鐧婚檰,榛樿鍚屾剰闅愮鏀跨瓥
- UserConfigManage.getInstance().setAcceiptPolicy(true);
+ UserConfigManage.getInstance().setAcceiptPolicy(false);
//閲嶆柊璁惧畾涓�涓椂闂�
UserConfigManage.getInstance().setLoginDateTime(0);
UserConfigManage.getInstance().Save();
+ //娓呯┖娑堟伅缂撳瓨鏁版嵁
+ HdlMessageLogic.getInstance().clearListMessage();
+ //娓呯┖鐢电珯缂撳瓨鏁版嵁
+ HdlResidenceLogic.getInstance().clearHouseList();
+ //娓呯┖璁惧缂撳瓨鏁版嵁
+ HdlDeviceLogic.getInstance().clearDeviceList();
+ //娓呯┖缂撳瓨鏁版嵁
+ if (mInfoMap != null) {
+ mInfoMap.clear();
+ }
//鏂紑mqtt杩炴帴
if (MqttRecvClient.getInstance() != null) {
- MqttRecvClient.getInstance().stop();
+ MqttRecvClient.getInstance().disConnect();
}
//鏂紑鎵�鏈塼cp杩炴帴涓旀竻绌鸿繛鎺ョ紦瀛�
// TODO: 10/10/23
// TcpSocketBoot.stopAllConnectLinkGateway();
-// if(null!=HDLUniMPSDKManager.getInstance().getUniMP()){
-// LogUtils.d("asdfasdfasdfsdf鎴戣鍒犻櫎鍟�");
-// HDLUniMPSDKManager.getInstance().getUniMP().closeUniMP();
-// }
-// initDCUniMPSDK();
- Intent intent = new Intent(getInstance(), HomeLoginActivity.class);
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ if (null != HDLUniMPSDKManager.getInstance().getUniMP()) {
+ HDLUniMPSDKManager.getInstance().getUniMP().closeUniMP();
+ }
+ SystemClock.sleep(200);
+ initDCUniMPSDK();
+ Intent intent = new Intent(getInstance(), LoginActivity.class);
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
if (type == 1) {
intent.putExtra("isJpush", true);
}
@@ -241,10 +273,12 @@
}
}
+ /**
+ * 鍒濆鍖栨瀬鍏塖DK
+ */
private void initJPush() {
JPushInterface.setDebugMode(true);
JPushInterface.init(getBaseContext());
-
}
/**
@@ -292,13 +326,36 @@
}
+ /**
+ * 钃濇箹涓� 淇敼瀹藉害 640dp 瀹藉害鎸夌収dp銆乻p鏉ラ�傞厤
+ * 鏃嬭浆鍚庨珮鍙樺,鎸夋棆杞悗楂樺害閫傞厤,鎵�浠ュ搴︿笉鍐欐
+ */
+ private void initAutoSize() {
+ AutoSize.initCompatMultiProcess(this);
+ boolean isBaseOnWidth = getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT;
+ AutoSizeConfig.getInstance().setBaseOnWidth(true).setCustomFragment(true).setDesignWidthInDp(375).setDesignHeightInDp(812).setUseDeviceSize(false).setOnAdaptListener(new onAdaptListener() {
+ @Override
+ public void onAdaptBefore(Object target, Activity activity) {
+
+ AutoSizeConfig.getInstance().setScreenWidth(ScreenUtils.getScreenSize(activity)[0]);
+ AutoSizeConfig.getInstance().setScreenHeight(ScreenUtils.getScreenSize(activity)[1] + ScreenUtils.getHeightOfNavigationBar(activity) + ScreenUtils.getStatusBarHeight());
+
+ }
+
+ @Override
+ public void onAdaptAfter(Object target, Activity activity) {
+
+ }
+ });
+ }
+
/**
* 鍒濆鍖杣ni app mqtt
*/
private void initUniMqtt() {
try {
- String ip = NetworkUtils.getIPAddress(this);
+ String ip = "192.168.1.100";//NetworkUtils.getIPAddress(this);
if (TextUtils.isEmpty(ip)) {
return;
}
@@ -310,4 +367,44 @@
}
}
+
+ @Override
+ protected void attachBaseContext(Context base) {
+ MultiDex.install(base);
+ super.attachBaseContext(base);
+ }
+
+ /**
+ * 鏀寔涓嫳鏂囧垏鎹�
+ */
+ 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());
+ Configuration configuration = getResources().getConfiguration();
+ configuration.setLocale(locale);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
+ configuration.setLocales(new LocaleList(locale));
+ }
+ return createConfigurationContext(configuration);
+ } catch (Exception e) {
+ return this;
+ }
+ }
}
--
Gitblit v1.8.0