From 66c4c910dcfe5d955103376c4c4afc685557dc55 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 23 十一月 2023 18:13:02 +0800
Subject: [PATCH] 2023年11月23日18:11:10

---
 app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java |   85 ++++++++++++++++++++++--------------------
 1 files changed, 45 insertions(+), 40 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
index 48627f5..1706fa8 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/MyPowerStationActivity.java
@@ -17,7 +17,8 @@
 import com.google.gson.Gson;
 import com.hdl.linkpm.sdk.core.exception.HDLException;
 import com.hdl.linkpm.sdk.home.type.HomeType;
-import com.hdl.linkpm.sdk.ota.bean.GatewayDriverBean;
+import com.hdl.linkpm.sdk.ota.bean.CloudGatewayDriversBean;
+import com.hdl.linkpm.sdk.utils.HDLMD5Utils;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.base.CustomBaseActivity;
 import com.hdl.photovoltaic.bean.MqttInfo;
@@ -33,9 +34,7 @@
 import com.hdl.photovoltaic.other.HdlUniLogic;
 import com.hdl.photovoltaic.ui.bean.DeviceRemoteInfo;
 import com.hdl.photovoltaic.uni.HDLUniMP;
-import com.hdl.photovoltaic.utils.AesUtils;
 import com.hdl.photovoltaic.utils.AppManagerUtils;
-import com.hdl.photovoltaic.utils.Md5Utils;
 import com.hdl.photovoltaic.utils.PermissionUtils;
 import com.hdl.sdk.link.HDLLinkLocalSdk;
 import com.hdl.sdk.link.common.event.EventListener;
@@ -49,13 +48,7 @@
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
 
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
 import java.util.List;
-import java.util.Objects;
-
 
 import okhttp3.ResponseBody;
 
@@ -89,6 +82,7 @@
         registerAllTopicsListener();
         //鍒濆鍖杕qtt瀹㈡埛绔�
         initMqttClient();
+
 
 
     }
@@ -276,48 +270,56 @@
 
     @Subscribe(threadMode = ThreadMode.MAIN)
     public void onEventMessage(BaseEventBus event) {
-        //缃戝叧鏇存柊mqtt绉橀挜鏇存柊閫氱煡
+
         if (event == null) {
             return;
         }
         if (TextUtils.isEmpty(event.getTopic())) {
             return;
         }
-        String[] topics = event.getTopic().split("/");
-        //涓婚涓嶇鍚堣鍒欎笉澶勭悊
-        if (topics.length < 3) {
-            return;
-        }
-        int index = -1;
-        List<GatewayBean> list = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList();
-        for (int i = 0; i < list.size(); i++) {
-            GatewayBean gatewayBean = list.get(i);
-            if (gatewayBean.getGatewayId().equals(topics[2])) {
-                index = i;
-                break;
+        //缃戝叧鏇存柊mqtt绉橀挜鏇存柊閫氱煡
+        if (event.getTopic().contains("/custom/mqtt/secret/change")) {
+            String[] topics = event.getTopic().split("/");
+            //涓婚涓嶇鍚堣鍒欎笉澶勭悊
+            if (topics.length < 3) {
+                return;
             }
-        }
-        if (index > -1) {
-            GatewayBean gatewayBean = list.get(index);
-            HdlDeviceLogic.getInstance().getDeviceRemoteInfo(UserConfigManage.getInstance().getHomeId(), gatewayBean.getSpk(), gatewayBean.getDevice_mac(), new CloudCallBeak<DeviceRemoteInfo>() {
-                @Override
-                public void onSuccess(DeviceRemoteInfo deviceRemoteInfo) {
-                    if (deviceRemoteInfo != null) {
-                        //鏇存柊mqtt閫氳鐨勬柊绉橀挜
-                        gatewayBean.setAesKey(deviceRemoteInfo.getSecret());
-                        //鐢ㄤ箣鍓嶇殑搴�,搴曞眰mqtt璁㈤槄锛屽姞瑙e瘑浼氱敤鍒拌鍙傛暟;
-                        HDLLinkConfig.getInstance().setAesKey(deviceRemoteInfo.getSecret());//璁剧疆mqtt閫氳绉橀挜搴�
+            int index = -1;
+            List<GatewayBean> list = HdlDeviceLogic.getInstance().getCurrentHomeGatewayList();
+            for (int i = 0; i < list.size(); i++) {
+                GatewayBean gatewayBean = list.get(i);
+                if (gatewayBean.getGatewayId().equals(topics[2])) {
+                    index = i;
+                    break;
+                }
+            }
+            if (index > -1) {
+                GatewayBean gatewayBean = list.get(index);
+                HdlDeviceLogic.getInstance().getDeviceRemoteInfo(UserConfigManage.getInstance().getHomeId(), gatewayBean.getSpk(), gatewayBean.getDevice_mac(), new CloudCallBeak<DeviceRemoteInfo>() {
+                    @Override
+                    public void onSuccess(DeviceRemoteInfo deviceRemoteInfo) {
+                        if (deviceRemoteInfo != null) {
+                            //鏇存柊mqtt閫氳鐨勬柊绉橀挜
+                            gatewayBean.setAesKey(deviceRemoteInfo.getSecret());
+                            //鐢ㄤ箣鍓嶇殑搴�,搴曞眰mqtt璁㈤槄锛屽姞瑙e瘑浼氱敤鍒拌鍙傛暟;
+                            HDLLinkConfig.getInstance().setAesKey(deviceRemoteInfo.getSecret());//璁剧疆mqtt閫氳绉橀挜搴�
+                        }
                     }
-                }
 
-                @Override
-                public void onFailure(HDLException e) {
+                    @Override
+                    public void onFailure(HDLException e) {
 
-                }
-            });
+                    }
+                });
+            }
+        } else if (event.getTopic().contains(HdlOtaLogic.localDownloadProgress)) {
+            //涓嬭浇浜戠椹卞姩鎴栬�呭浐浠舵枃浠�,鑷繁璁$畻杩涘害鏉′笂鎶ュ埌uni閭h竟
+            HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean();
+            uniCallBackBaseBean.setType(HdlOtaLogic.localDownloadProgress);
+            uniCallBackBaseBean.setData(event.getData());
+            HdlUniLogic.getInstance().sendUni(HDLUniMP.UNI_EVENT_REPLY_OTA_MODEL, uniCallBackBaseBean);
+            HdlLogLogic.print(((HdlOtaLogic.Progress) event.getData()).step + "", false);
         }
-
-
     }
 
 
@@ -352,4 +354,7 @@
     }
 
 
+
+
+
 }
\ No newline at end of file

--
Gitblit v1.8.0