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