From af2cbc2a24b3724e7fc3e6b42e134b21a3144c75 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期四, 17 二月 2022 15:33:19 +0800
Subject: [PATCH] 过滤掉非json数据不传给三方使用

---
 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java
index a212728..7988290 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java
@@ -3,7 +3,9 @@
 import android.text.TextUtils;
 
 import com.hdl.sdk.common.config.TopicConstant;
+import com.hdl.sdk.common.utils.LogUtils;
 import com.hdl.sdk.common.utils.SPUtils;
+import com.hdl.sdk.connect.bean.request.AuthenticateRequest;
 import com.hdl.sdk.connect.bean.response.GatewaySearchBean;
 
 
@@ -24,10 +26,13 @@
     private boolean isLocalEncrypt;//缃戝叧鏄惁闇�瑕佸姞瀵嗛�氳
     private GatewaySearchBean currentGateway;//褰撳墠缃戝叧
 
+    private AuthenticateRequest.AuthenticateDeviceInfoBean deviceInfoBean;//褰撳墠璁惧鍩烘湰淇℃伅
+
     /**
      * instance
      */
     private volatile static HDLLinkConfig instance;
+
     /**
      * getInstance
      *
@@ -62,15 +67,16 @@
     /**
      * 鍔犺浇缂撳瓨
      */
-    void loadConfig(){
+    void loadConfig() {
         localSecret = SPUtils.getString(AUTHENTICATE_LS_KEY, "");
         gatewayId = SPUtils.getString(AUTHENTICATE_GATEWAYID_KEY, "");
         ipAddress = SPUtils.getString(AUTHENTICATE_IPADDRESS_KEY, "");
-        isLocalEncrypt = SPUtils.getBoolean(AUTHENTICATE_IS_LS_KEY,false);
+        isLocalEncrypt = SPUtils.getBoolean(AUTHENTICATE_IS_LS_KEY, false);
     }
 
     /**
      * 淇濆瓨閰嶇疆
+     *
      * @param localSecret
      * @param gatewayId
      * @param ipAddress
@@ -85,10 +91,18 @@
     }
 
     /**
+     * 閲嶆柊淇濆瓨
+     */
+    public void reSaveConfig() {
+        this.saveConfig(this.localSecret, this.gatewayId, this.ipAddress);
+    }
+
+    /**
      * 妫�娴嬫槸鍚﹀凡缁忚璇佽繃
+     *
      * @return
      */
-    public boolean checkIfCertified(){
+    public boolean checkIfCertified() {
         //localSecret涓嶄负绌哄苟涓旈暱搴︾瓑浜�16 缃戝叧id涓嶈兘涓虹┖
         return !TextUtils.isEmpty(localSecret)
                 && localSecret.length() == 16
@@ -101,15 +115,22 @@
     }
 
     public String getLocalSecret() {
+        LogUtils.i("HDLLinkConfig","瀵嗛挜鏄�:"+localSecret);
         return localSecret;
     }
 
     public String getGatewayId() {
         return gatewayId;
     }
+    public void setGatewayId(String gatewayId) {
+        this.gatewayId=gatewayId;
+    }
 
     public String getIpAddress() {
         return ipAddress;
+    }
+    public void setIpAddress(String ipAddress){
+        this.ipAddress = ipAddress;
     }
 
     public boolean isLocalEncrypt() {
@@ -127,29 +148,46 @@
 
     public void setCurrentGateway(GatewaySearchBean currentGateway) {
         this.currentGateway = currentGateway;
+        if (this.currentGateway != null && !TextUtils.isEmpty(this.currentGateway.getIp_address())) {
+            if (!this.ipAddress.equals(this.currentGateway.getIp_address())) {
+                //濡傛灉IP鍦板潃鏈夊彉鍖栧垯鏇存柊
+                this.ipAddress = this.currentGateway.getIp_address();
+                SPUtils.put(AUTHENTICATE_IPADDRESS_KEY, ipAddress);
+            }
+        }
     }
 
     /**
      * 鍒ゆ柇褰撳墠涓婚鏁版嵁鏄惁闇�瑕佸姞瀵�
+     *
      * @param topicStr 褰撳墠涓婚
      * @return
      */
-    public boolean ifNeedEncrypt(String topicStr){
+    public boolean ifNeedEncrypt(String topicStr) {
         //杩囨护鐩稿叧闇�瑕佸姞瀵嗙殑涓婚
         return (!topicStr.contains(TopicConstant.GATEWAY_AUTH_BROADCAST) //缃戝叧骞挎挱鍏ョ綉鎸囦护
                 && !topicStr.contains(TopicConstant.DEIVCE_AUTH_REQUEST) //鍏ョ綉璁よ瘉
                 && !topicStr.contains(TopicConstant.GATEWAY_SEARCH) //鎼滅储缃戝叧涓婚
+                && !topicStr.contains(TopicConstant.BROADCAST)
                 && isLocalEncrypt//鍚敤鍔犲瘑鏍囧織
         );
     }
 
     /**
      * 鎷兼帴缃戝叧ID鑾峰彇瀹屾暣鐨勪富棰�
+     *
      * @param topicStr
      * @return
      */
-    public String getFullTopic(String topicStr){
+    public String getFullTopic(String topicStr) {
         return String.format(topicStr, gatewayId);
     }
 
+    public AuthenticateRequest.AuthenticateDeviceInfoBean getDeviceInfoBean() {
+        return deviceInfoBean;
+    }
+
+    public void setDeviceInfoBean(AuthenticateRequest.AuthenticateDeviceInfoBean deviceInfoBean) {
+        this.deviceInfoBean = deviceInfoBean;
+    }
 }

--
Gitblit v1.8.0