From f50e8e60e9da99e4f69d8ab76810dc7e5fb448bc Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期一, 02 十二月 2024 10:29:09 +0800 Subject: [PATCH] 2024年12月02日10:29:05 --- app/src/main/java/com/hdl/photovoltaic/HDLApp.java | 170 +++++++++++++++++++++++++++++++------------------------- 1 files changed, 95 insertions(+), 75 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java index 85f9657..444d0a4 100644 --- a/app/src/main/java/com/hdl/photovoltaic/HDLApp.java +++ b/app/src/main/java/com/hdl/photovoltaic/HDLApp.java @@ -1,19 +1,18 @@ 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.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 +21,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; @@ -36,17 +39,18 @@ 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 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 { @@ -60,6 +64,7 @@ //澹版槑涓�涓叕鍏辩殑淇℃伅鏄犲皠,鍙綋浣滃叏灞�鍙橀噺浣跨敤; public HashMap<String, String> mInfoMap = new HashMap<>(); + //鍒╃敤鍗曚緥妯″紡鑾峰彇褰撳墠搴旂敤鐨勫敮涓�瀹炰緥 public static HDLApp getInstance() { return mHDLApp; @@ -67,14 +72,15 @@ @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(); } public void getAppLanguage() { @@ -83,7 +89,7 @@ //浠庡唴瀛橀噷闈㈣幏鍙栦笉鍒拌瑷�,鑾峰彇褰撳墠绯荤粺鐨�; String str = getResources().getConfiguration().locale.getCountry(); if (str.equals("CN") || str.equals("TW")) { - UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.cn); + UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.zh); } else { UserConfigManage.getInstance().setCurrentAppLanguage(LocalManageUtil.en); } @@ -119,16 +125,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,6 +145,7 @@ // TypeUtils.compatibleWithFieldName = true; // //9.鍒濆鍖栫綉缁滃伐鍏� // NetWorkUtil.init(this); + initAutoSize(); //鍒濆鍖栨瀬鍏夋帹閫� initJPush(); initHDLLinkPMSdk(); @@ -147,10 +153,12 @@ initSocket(); //4.鍒濆鍖朞KHttpLog 鏄惁寮�鍚� setOKHttpLogOpen(isLogEnabled); +// initMqttClient(); //鐩戝惉缃戠粶鐘舵�佸彉鍖� this.networkMonitoring(); //鍒濆鍖栨湰鍦癮ssets鏂囦欢澶硅祫婧愭枃浠� - this.initLocalAssetsData(); +// this.initLocalAssetsData(); + } @@ -163,43 +171,61 @@ 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.en); } + //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() { @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(); - //鏂紑mqtt杩炴帴 - if (MqttRecvClient.getInstance() != null) { - MqttRecvClient.getInstance().stop(); + //娓呯┖娑堟伅缂撳瓨鏁版嵁 + HdlMessageLogic.getInstance().clearListMessage(); + //娓呯┖鐢电珯缂撳瓨鏁版嵁 + HdlResidenceLogic.getInstance().clearHouseList(); + //娓呯┖璁惧缂撳瓨鏁版嵁 + HdlDeviceLogic.getInstance().clearDeviceList(); + //娓呯┖缂撳瓨鏁版嵁 + if (mInfoMap != null) { + mInfoMap.clear(); } +// //鏂紑mqtt杩炴帴 +// if (MqttRecvClient.getInstance() != null) { +// 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); } @@ -234,6 +260,9 @@ } } + /** + * 鍒濆鍖栨瀬鍏塖DK + */ private void initJPush() { JPushInterface.setDebugMode(true); JPushInterface.init(getBaseContext()); @@ -285,13 +314,35 @@ } + /** + * 钃濇箹涓� 淇敼瀹藉害 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; } @@ -303,41 +354,10 @@ } } - public void appLocationInfo() { - LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); - if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { - // TODO: Consider calling - // ActivityCompat#requestPermissions - // here to request the missing permissions, and then overriding - // public void onRequestPermissionsResult(int requestCode, String[] permissions, - // int[] grantResults) - // to handle the case where the user grants the permission. See the documentation - // for ActivityCompat#requestPermissions for more details. - return; - } - //寮�濮嬪畾浣嶆湇鍔★紝minTimeMs鏈�灏忔椂闂撮棿闅旓紙鍗曚綅涓烘绉掞級,minDistanceM鏈�灏忚窛绂婚棿闅旓紙鍗曚綅涓虹背锛夈�佹渶灏忔椂闂撮棿闅旓紙鍗曚綅涓烘绉掞級绛夊弬鏁般�� - locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 1, new LocationListener() { - @Override - public void onLocationChanged(@NonNull Location location) { - // 褰撲綅缃彂鐢熷彉鍖栨椂璋冪敤姝ゆ柟娉� - double latitude = location.getLatitude(); // 鑾峰彇绾害 - double longitude = location.getLongitude(); // 鑾峰彇缁忓害 - - HdlLogLogic.print("绾害--->" + latitude, true); - HdlLogLogic.print("缁忓害--->" + longitude, true); - // 杩欓噷鍙互鏍规嵁闇�姹傚鐞嗚幏鍙栧埌鐨勭粡绾害鏁版嵁 - } - - public void onStatusChanged(String provider, int status, Bundle extras) { - } - - public void onProviderEnabled(String provider) { - } - - public void onProviderDisabled(String provider) { - } - - }); + @Override + protected void attachBaseContext(Context base) { + MultiDex.install(base); + super.attachBaseContext(base); } -- Gitblit v1.8.0