From 1311774b7c71fe94016a7b2cdf508e3d39114422 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期五, 12 四月 2024 09:46:06 +0800
Subject: [PATCH] Merge branch 'dev-hxb' into wjc_new
---
app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java | 100 ++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 92 insertions(+), 8 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java
index 1f8448e..87db5a5 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/CPowerStationActivity.java
@@ -2,14 +2,20 @@
import android.os.Bundle;
+import android.os.Process;
import android.os.SystemClock;
import android.text.TextUtils;
+import android.util.Log;
+
+
+import androidx.annotation.Nullable;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hdl.linkpm.sdk.core.exception.HDLException;
import com.hdl.linkpm.sdk.home.type.HomeType;
import com.hdl.photovoltaic.HDLApp;
+import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.bean.MqttInfo;
import com.hdl.photovoltaic.config.ConstantManage;
@@ -28,6 +34,10 @@
import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.ui.bean.OidBean;
import com.hdl.photovoltaic.uni.HDLUniMP;
+import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
+import com.hdl.photovoltaic.utils.AppManagerUtils;
+import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
+import com.hdl.photovoltaic.widget.ConfirmationTipDialog;
import com.hdl.sdk.link.HDLLinkLocalSdk;
import com.hdl.sdk.link.common.event.EventListener;
import com.hdl.sdk.link.core.bean.LinkResponse;
@@ -35,6 +45,7 @@
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
import com.hdl.sdk.link.core.bean.gateway.GatewayBean;
import com.hdl.sdk.link.core.config.HDLLinkConfig;
+import com.hdl.sdk.link.core.connect.HDLUdpConnect;
import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient;
import org.greenrobot.eventbus.Subscribe;
@@ -53,6 +64,7 @@
private ActivityCpowerStationBinding viewBinding;
private EventListener allTopicsListener;
+ private int backPressTimes;
@Override
public Object getContentView() {
@@ -62,6 +74,8 @@
@Override
public void onBindView(Bundle savedInstanceState) {
+ setNotificationBarBackgroundColor(CustomColor.white);
+ setStatusBarTextColor();
//C绔惎鍔ˋpp鑷姩鎵撳紑灏忕▼搴忕數绔欒鎯呯晫闈�
startAppAutomaticallyOpenUni();
//娉ㄥ唽鐩戝惉
@@ -70,6 +84,33 @@
this.initMqttClient();
//涓婁紶鏋佸厜娉ㄥ唽ID鍒颁簯绔�
this.pushTokens();
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ //鍚姩椤典笌mainActivity鏍峰紡涓�鏍凤紝杩欐牱鍚姩椤靛拰mainActivity鐪嬩笂鍘绘槸涓�涓晫闈紝鐩殑鏄负浜唌ainActivity閬綇涓嬩竴椤碉紱
+// AppManagerUtils.getAppManager().finishActivity(StartActivity.class);
+// this.portConflictDialog();
+ }
+ public void startAppAutomaticallyOpenUni() {
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ SystemClock.sleep(10);
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ //浣庝簬瀹夊崜14鐗堟湰
+ if (android.os.Build.VERSION.SDK_INT < 34) {
+ startAppAutomaticallyOpenUni(false);
+ } else {
+ startAppAutomaticallyOpenUni(true);
+ }
+ }
+ });
+ }
+ }).start();
}
@Subscribe(threadMode = ThreadMode.MAIN)
@@ -151,14 +192,21 @@
}
});
}
+ } else if (event.getTopic().contains(HDLUniMP.UNI_EVENT_REPLY_OTHER_MODEL) && event.getType().contains(HDLUniMP.UNI_EVENT_REPLY_OTHER_BACK)) {
+ //鐗╃悊鎸夐敭杩斿洖浜嬩欢(鍖呮嫭宸︽粦绉婚櫎浜嬩欢)
+ killProcessApp();
}
}
+
/**
* C绔惎鍔ˋpp鑷姩鎵撳紑灏忕▼搴忕數绔欒鎯呯晫闈�
*/
- private void startAppAutomaticallyOpenUni() {
+ private void startAppAutomaticallyOpenUni(boolean delay) {
+ if(delay) {
+ SystemClock.sleep(2000);
+ }
List<HouseIdBean> HouseIdList = HdlResidenceLogic.getInstance().getHouseIdList();
if (HouseIdList.size() == 0) {
String path = HDLUniMP.UNI_EVENT_OPEN_HOME_Null_C;
@@ -173,14 +221,50 @@
}
HouseIdBean houseIdBean = HouseIdList.get(select_home);
HdlResidenceLogic.getInstance().switchHouse(houseIdBean);
- String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS_C
- + "?homeId=" + houseIdBean.getHomeId()
- + "&homeName=" + houseIdBean.getHomeName()
- + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
+ String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS_C + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus();
HdlUniLogic.getInstance().openUniMP(path, null);
}
-
}
+
+// /**
+// * 鐗╃悊鎸夐敭杩斿洖浜嬩欢(鍖呮嫭宸︽粦绉婚櫎浜嬩欢)
+// */
+// @Override
+// public void onBackPressed() {
+// killProcessApp();
+// super.onBackPressed();
+// }
+
+ private void killProcessApp() {
+ //鐗╃悊鎸夐敭杩斿洖浜嬩欢(鍖呮嫭宸︽粦绉婚櫎浜嬩欢)
+ if (AppManagerUtils.getAppManager().getActivitySize() <= 1) {
+ if (backPressTimes == 0) {
+ HdlThreadLogic.toast(_mActivity, R.string.kill_app);
+ backPressTimes = 1;
+ new Thread() {
+ @Override
+ public void run() {
+ try {
+ Thread.sleep(2000);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ } finally {
+ backPressTimes = 0;
+ }
+ }
+ }.start();
+ return;
+ } else {
+ //鍏抽棴灏忕▼搴�
+ if (null != HDLUniMPSDKManager.getInstance().getUniMP()) {
+ HDLUniMPSDKManager.getInstance().getUniMP().closeUniMP();
+ }
+ AppManagerUtils.getAppManager().finishAllActivity();
+ Process.killProcess(Process.myPid());
+ }
+ }
+ }
+
@Override
protected void onDestroy() {
@@ -255,7 +339,7 @@
@Override
public void onSuccess(MqttInfo info) {
if (info != null) {
- MqttRecvClient.getInstance().setConnectParam(info.getUrl(), info.getClientId(), info.getUserName(), info.getPassWord());
+ MqttRecvClient.getInstance().setConnectParam(info.getUrl(), info.getClientId(), info.getUserName(), info.getPassWord(),null);
MqttRecvClient.getInstance().connect();
}
}
@@ -337,4 +421,4 @@
}
-}
\ No newline at end of file
+}
--
Gitblit v1.8.0