From 6521c8e329665cc97f0714a9a094d2d823e23980 Mon Sep 17 00:00:00 2001
From: 562935844@qq.com
Date: 星期二, 19 九月 2023 13:52:41 +0800
Subject: [PATCH] 修复退网清除缓存异常
---
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java | 17 +++++---
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/utils/AllTopicManagerUtils.java | 21 ++++++++--
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java | 21 ++++++----
HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java | 18 +++++----
4 files changed, 48 insertions(+), 29 deletions(-)
diff --git a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
index 3d1386e..16d97f1 100644
--- a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
+++ b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
@@ -384,19 +384,21 @@
void initDeviceInfo()
{
AuthenticateRequest.AuthenticateDeviceInfoBean infoBean = new AuthenticateRequest.AuthenticateDeviceInfoBean();
- infoBean.setDeviceMAC("AA00000000000100");
- infoBean.setIPMAC("AA00000000000100");
- infoBean.setDeviceName("闊充箰鎾斁鍣�");//璁惧鍚嶅瓧
- infoBean.setDeviceModel("MCLog.431");//璁惧鍨嬪彿
+ infoBean.setDeviceMAC("f2c5d8bad48f");
+ infoBean.setIPMAC("f2c5d8bad48f");
+ infoBean.setDeviceName("榄旈暅");//璁惧鍚嶅瓧
+ infoBean.setDeviceModel("HDLSDK");//璁惧鍨嬪彿
infoBean.setAccessMode("WIFI");
infoBean.setIPGateway("192.168.1.1");
infoBean.setIPAddress("192.168.1.116");
- infoBean.setGateway_type("music.standard");
+ infoBean.setGateway_type("screen.touch");
infoBean.setHw_version("HW2.0");
infoBean.setFw_version("Fw1.0");
infoBean.setOID("010105000000FE11");//姣忎釜璁惧oid閮借涓嶄竴鏍�
infoBean.setSid("110105000000FE08110100000011");//姣忎釜璁惧鐨剆id閮借涓嶄竴鏍�
+ infoBean.setSupplier("JINMAOYUN");
HDLLinkConfig.getInstance().setDeviceInfoBean(infoBean);
+
}
/**
@@ -413,8 +415,8 @@
// 姝e紡鏈嶅姟鍣�
String spkStr = "screen.mirror";//浜у搧spk
- String macStr = "AA00000000000100";//璁惧鍞竴MAC鍦板潃
- String secret = "e186beeb7974998e";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
+ String macStr = "f2c5d8bad48f";//璁惧鍞竴MAC鍦板潃
+// String secret = "e186beeb7974998e";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
String mac_key = stringToMD5(stringToMD5(macStr + secret));
String versionString = "HDL_V1.0.1";//
@@ -424,7 +426,7 @@
//1.璁剧疆璁よ瘉淇℃伅
AuthenticateRequest.RequestBean requestBean = new AuthenticateRequest.RequestBean();
requestBean.setMAC(macStr);
- requestBean.setSupplier("WISE");
+ requestBean.setSupplier("JINMAOYUN");
requestBean.setFirmwareVersion(versionString);
requestBean.setHardwareModel("1956F");
AuthenticateRequest.AuthBean authbean = new AuthenticateRequest.AuthBean();
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/utils/AllTopicManagerUtils.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/utils/AllTopicManagerUtils.java
index c15ba93..1908d0a 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/utils/AllTopicManagerUtils.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/utils/AllTopicManagerUtils.java
@@ -22,7 +22,7 @@
/**
* Created by hxb on 2023/9/14.
*/
-public class AllTopicManagerUtils {
+public class AllTopicManagerUtils {
/**
* 鍏ㄥ眬涓婚澶勭悊鏂规硶锛屽彲浠ュ鐞嗘墍鏈夋帴鏀跺埌鐨勬暟鎹�
@@ -138,6 +138,7 @@
/**
* 鏇存柊瀵嗛挜
+ *
* @param body
*/
private static void managerLinkBroadcast(String body) {
@@ -166,18 +167,28 @@
/**
* 閫�缃�
+ *
* @param body
*/
- private static void managerDeleteNofity(String body)
- {
+ private static void managerDeleteNofity(String body) {
try {
DeviceDeleteResponse deviceDeleteResponse = GsonConvert.getGson().fromJson(body, new TypeToken<DeviceDeleteResponse>() {
}.getType());
- if(deviceDeleteResponse==null||deviceDeleteResponse.getObjects()==null){
+ if (deviceDeleteResponse == null || deviceDeleteResponse.getObjects() == null) {
return;
}
- HDLSocket.getInstance().deleteNetwork(deviceDeleteResponse.getObjects().get(0).getOID(), null);
+ HDLSocket.getInstance().deleteNetwork(deviceDeleteResponse.getObjects().get(0).getOID(), new HDLLinkCallBack() {
+ @Override
+ public void onSuccess(String msg) {
+
+ }
+
+ @Override
+ public void onError(HDLLinkException e) {
+
+ }
+ });
} catch (Exception e) {
LogUtils.i("LinkMessageDecoder.java:deleteNetwork----->e= " + e.getMessage());
}
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java
index 6a3b624..3361024 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java
@@ -155,7 +155,7 @@
LogUtils.i("缃戝叧鍏ョ綉骞挎挱IP: " + bean.getIPAddress());
if (!TextUtils.isEmpty(bean.getSlave_mac())) {
if (!bean.getSlave_mac().equals(request.getObjects().getDeviceMAC())) {
- LogUtils.i("鍏ョ綉楠岃瘉鐨刴ac鍜屾湰鏈轰笉涓�鏍凤紝璇锋眰鐨凪AC鏄�"+bean.getSlave_mac()+" 鏈満鐨勬槸"+request.getObjects().getDeviceMAC());
+ LogUtils.i("鍏ョ綉楠岃瘉鐨刴ac鍜屾湰鏈轰笉涓�鏍凤紝璇锋眰鐨凪AC鏄�" + bean.getSlave_mac() + " 鏈満鐨勬槸" + request.getObjects().getDeviceMAC());
return;
}
}
@@ -168,8 +168,8 @@
}
}
- }catch (Exception e){
- LogUtils.e("鍏ョ綉楠岃瘉寮傚父",e.getMessage());
+ } catch (Exception e) {
+ LogUtils.e("鍏ョ綉楠岃瘉寮傚父", e.getMessage());
}
}
});
@@ -196,6 +196,7 @@
final GatewayInfoRequest request = new GatewayInfoRequest();
AuthenticateRequest.AuthenticateDeviceInfoBean authenticateDeviceInfoBean = HDLLinkConfig.getInstance().getDeviceInfoBean();
+ if (authenticateDeviceInfoBean == null) return;
request.setDevice_model(authenticateDeviceInfoBean.getDeviceModel());
request.setDevice_mac(authenticateDeviceInfoBean.getDeviceMAC());
request.setDevice_name(authenticateDeviceInfoBean.getDeviceName());
@@ -207,7 +208,9 @@
if (authenticateDeviceInfoBean.getSupplier() == null) {
AuthenticateRequest.RequestBean requestBean = HDLLinkConfig.getInstance().getRequestBean();
- request.setSupplier(requestBean.getSupplier());
+ if (requestBean != null) {
+ request.setSupplier(requestBean.getSupplier());
+ }
}
request.setHw_version(authenticateDeviceInfoBean.getHw_version());
@@ -255,19 +258,19 @@
String localSecret = "";
String gatewayId = "";
String ipAddress = "";
- String homeId="";
+ String homeId = "";
if (bean.getAuth() != null) {
localSecret = bean.getAuth().getLocalSecret();
}
if (bean.getObjects() != null) {
gatewayId = bean.getObjects().getGatewayID();
ipAddress = bean.getObjects().getIPAddress();
- homeId=bean.getObjects().getHomeId();
+ homeId = bean.getObjects().getHomeId();
}
if (ipAddress == null) {
ipAddress = bean.getIp_address();
}
- if(!TextUtils.isEmpty(homeId)){
+ if (!TextUtils.isEmpty(homeId)) {
HDLLinkConfig.getInstance().setHomeId(homeId);
}
HDLLinkConfig.getInstance().setAuthBean(request.getAuth());
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
index 14f9b6e..7331819 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
@@ -701,8 +701,8 @@
/**
* 涓婃姤Sid鍒楄〃
*
- * @param requestList sid鍒楄〃
- * @param callBack 鍥炶皟
+ * @param requestList sid鍒楄〃
+ * @param callBack 鍥炶皟
*/
public void UploadSidList(List<ListSidRequest> requestList, HDLLinkCallBack callBack) {
if (!TextUtils.isEmpty(getGatewayId()) && !TextUtils.isEmpty(getTcpIp())) {
@@ -949,14 +949,13 @@
// String replyTopic = topic + "_reply";
try {
- sendMsg(message.getSendBytes(), topic, callBack, new SendListener() {
+ sendMsg(message.getSendBytes(), topic, null, new SendListener() {
@Override
public void onSucceed() {
+ HDLLinkConfig.getInstance().clearConfig();
if (callBack == null) return;
try {
callBack.onSuccess("閫�缃戞垚鍔�");
- HDLLinkConfig.getInstance().clearConfig();
-
} catch (Exception e) {
callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_ERROR));
}
@@ -995,7 +994,11 @@
public void tcpSendMsg(String topic, String bodyStr, HDLLinkCallBack callBack) {
try {
LinkRequest message = new LinkRequest(topic, bodyStr);
+ if (topic != null && topic.endsWith("_reply")) {
+ callBack = null;
+ }
String replyTopic = topic + "_reply";
+ HDLLinkCallBack finalCallBack = callBack;
sendMsg(message.getSendBytes(), replyTopic, callBack, new SendListener() {
@Override
public void onSucceed() {
@@ -1004,8 +1007,8 @@
@Override
public void onError() {
- if (callBack != null) {
- callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_SEND_ERROR));
+ if (finalCallBack != null) {
+ finalCallBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_SEND_ERROR));
}
}
});
@@ -1116,8 +1119,9 @@
/**
* 鍥炲缃戝叧閰嶇疆鍛戒护
+ *
* @param mac_Oid_GatewayId
- * @param msgId 娑堟伅Id
+ * @param msgId 娑堟伅Id
* @param callBack
*/
public void gatewayRemoteEditReply(String mac_Oid_GatewayId, String msgId, HDLLinkCallBack callBack) {
@@ -1135,7 +1139,6 @@
String topic = String.format(TopicConstant.GATEWAY_EDIT_REMOTE_REPLY, mac_Oid_GatewayId);
LinkRequest message = new LinkRequest(topic,
GsonConvert.getGson().toJson(data));
-
try {
--
Gitblit v1.8.0