From 0188dee359636723190f0f67a6b674b7b08f7bef Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期一, 21 三月 2022 09:55:01 +0800
Subject: [PATCH] 增加判断json数据格式

---
 HDLSDK/hdl-common/build.gradle                                                        |    2 
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleMessage.java          |    2 
 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkResponse.java           |   10 ++
 HDLSDK.zip                                                                            |    0 
 HDLSDK/hdl-socket/build.gradle                                                        |    2 
 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java         |   83 +++++++++-------
 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/protocol/LinkMessageDecoder.java |    6 
 HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java                        |  112 +++++++++++-----------
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessagePipeLine.java         |    4 
 HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar                                            |    0 
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleFlow.java             |    2 
 /dev/null                                                                             |    0 
 HDLSDK/hdl-connect/build.gradle                                                       |    2 
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessageToByteEncoder.java    |    2 
 HDLSDK_DEMO.zip                                                                       |    0 
 HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar                                            |    0 
 HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar                                           |    0 
 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java                        |    2 
 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java        |   21 ++-
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/TcpClient.java              |    2 
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/UdpClient.java              |    2 
 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/ByteToMessageDecoder.java    |    6 
 HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java                             |   20 ++--
 23 files changed, 154 insertions(+), 126 deletions(-)

diff --git a/HDLSDK.zip b/HDLSDK.zip
index 945fe33..35e1818 100644
--- a/HDLSDK.zip
+++ b/HDLSDK.zip
Binary files differ
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 571b025..be2a3d5 100644
--- a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
+++ b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
@@ -94,7 +94,7 @@
 
          init();
         checkIfCertified();
-        initDeviceInfo();
+        initDeviceInfo();//鍒濆鍖栧熀鏈俊鎭紝闈炲父閲嶈锛岃璇佹椂瑕佺敤
         registerAllTopicsListener();
 
         ActivityResultLauncher<String[]> launcher = registerForActivityResult(new ActivityResultContracts.RequestMultiplePermissions(), new ActivityResultCallback<Map<String, Boolean>>() {
@@ -272,7 +272,7 @@
         infoBean.setDeviceModel("MCLog.431");//璁惧鍨嬪彿
         infoBean.setAccessMode("WIFI");
         infoBean.setIPGateway("192.168.1.1");
-        infoBean.setIPAddress("192.168.1.101");
+        infoBean.setIPAddress("192.168.1.102");
         infoBean.setGateway_type("music.standard");
         infoBean.setHw_version("HW2.0");
         infoBean.setFw_version("Fw1.0");
@@ -288,15 +288,15 @@
         tv.setText("寮�濮嬪叆缃戣璇�...");
         //璁よ瘉鎻愪氦鍙傛暟鍑嗗
 
-        //娴嬭瘯鏈嶅姟
-        String spkStr = "ir.module";//浜у搧spk
-        String macStr = "AA000000000000AF";//璁惧鍞竴MAC鍦板潃
-        String secret = "44b360eb74b7ba64";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
+//        娴嬭瘯鏈嶅姟
+//        String spkStr = "ir.module";//浜у搧spk
+//        String macStr = "AA000000000000AF";//璁惧鍞竴MAC鍦板潃
+//        String secret = "44b360eb74b7ba64";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
 
-//        //姝e紡鏈嶅姟鍣�
-//        String spkStr = "screen.mirror";//浜у搧spk
-//        String macStr = "AA000000000000AC";//璁惧鍞竴MAC鍦板潃
-//        String secret = "ee62124c151b737c";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
+//        姝e紡鏈嶅姟鍣�
+        String spkStr = "screen.mirror";//浜у搧spk
+        String macStr = "AA000000000000AC";//璁惧鍞竴MAC鍦板潃
+        String secret = "ee62124c151b737c";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
 
         String mac_key = stringToMD5(stringToMD5(macStr + secret));
         String versionString = "HDL_V1.0.1";//
diff --git a/HDLSDK/hdl-common/build.gradle b/HDLSDK/hdl-common/build.gradle
index 1642da9..183501e 100644
--- a/HDLSDK/hdl-common/build.gradle
+++ b/HDLSDK/hdl-common/build.gradle
@@ -9,8 +9,8 @@
         minSdkVersion rootProject.minSdkVersion
         targetSdkVersion rootProject.targetSdkVersion
         versionCode 2
-        versionName "1.0.7"
 
+        versionName "1.0.10"
         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
         consumerProguardFiles "consumer-rules.pro"
     }
diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java
index e8ca45d..f9d5328 100644
--- a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java
+++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java
@@ -19,7 +19,7 @@
         return version;
     }
 
-    private String version="1.0.7";
+    private String version="1.0.8";
 
     private HDLSdk() {
     }
diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java
index d1b24ec..9316f07 100644
--- a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java
+++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java
@@ -27,7 +27,7 @@
     private static final int MAIN_TYPE = 0;
     private static final int IO_TYPE = 1;
 
-    private static final ExecutorService ioThread = ThreadToolUtils.getInstance().newFixedThreadPool(2);
+    private static final ExecutorService ioThread = ThreadToolUtils.getInstance().newFixedThreadPool(3);
 
     private EventDispatcher() {
     }
@@ -63,43 +63,48 @@
     }
 
     public synchronized void remove(Object tag) {
-        ioThread.execute(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    if (EVENT.containsKey(tag)) {
-                        List<EventListener> list = EVENT.get(tag);
-                        for (EventListener eventListener : list) {
-                            TYPE.remove(eventListener);
+        try {
+
+            ioThread.execute(new Runnable() {
+                @Override
+                public void run() {
+                    try {
+                        if (EVENT.containsKey(tag)) {
+                            List<EventListener> list = EVENT.get(tag);
+                            for (EventListener eventListener : list) {
+                                TYPE.remove(eventListener);
+                            }
+                            EVENT.remove(tag);
                         }
-                        EVENT.remove(tag);
+                    } catch (Exception ignored) {
+
                     }
-                } catch (Exception ignored) {
 
                 }
-
-            }
-        });
+            });
+        }catch (Exception e){}
     }
 
     public synchronized void remove(Object tag, EventListener listener) {
-        ioThread.execute(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    if (EVENT.containsKey(tag)) {
-                        List<EventListener> ev = EVENT.get(tag);
-                        if (ev != null && !ev.isEmpty()) {
-                            TYPE.remove(listener);
-                            ev.remove(listener);
+        try {
+            ioThread.execute(new Runnable() {
+                @Override
+                public void run() {
+                    try {
+                        if (EVENT.containsKey(tag)) {
+                            List<EventListener> ev = EVENT.get(tag);
+                            if (ev != null && !ev.isEmpty()) {
+                                TYPE.remove(listener);
+                                ev.remove(listener);
+                            }
                         }
+                    } catch (Exception ignored) {
+
                     }
-                } catch (Exception ignored) {
 
                 }
-
-            }
-        });
+            });
+        }catch (Exception e){}
     }
 
 
@@ -150,20 +155,22 @@
      * @param listener
      */
     public synchronized void removeAllTopicsListener(EventListener listener) {
-        ioThread.execute(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    if (ALL_TOPICS_EVENT != null && !ALL_TOPICS_EVENT.isEmpty()) {
-                        TYPE.remove(listener);
-                        ALL_TOPICS_EVENT.remove(listener);
+        try {
+            ioThread.execute(new Runnable() {
+                @Override
+                public void run() {
+                    try {
+                        if (ALL_TOPICS_EVENT != null && !ALL_TOPICS_EVENT.isEmpty()) {
+                            TYPE.remove(listener);
+                            ALL_TOPICS_EVENT.remove(listener);
+                        }
+                    } catch (Exception ignored) {
+
                     }
-                } catch (Exception ignored) {
 
                 }
-
-            }
-        });
+            });
+        }catch (Exception e){}
     }
 
     public synchronized void clear() {
diff --git a/HDLSDK/hdl-connect/build.gradle b/HDLSDK/hdl-connect/build.gradle
index 30c83a1..26df94c 100644
--- a/HDLSDK/hdl-connect/build.gradle
+++ b/HDLSDK/hdl-connect/build.gradle
@@ -9,7 +9,7 @@
         minSdkVersion rootProject.minSdkVersion
         targetSdkVersion rootProject.targetSdkVersion
         versionCode 2
-        versionName "1.0.7"
+        versionName "1.0.10"
 
         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
         consumerProguardFiles "consumer-rules.pro"
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkResponse.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkResponse.java
index b35dcfc..8364f80 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkResponse.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkResponse.java
@@ -17,6 +17,16 @@
     private String data;
     private int length;
 
+    public String getSource_ipAddress() {
+        return source_ipAddress;
+    }
+
+    public void setSource_ipAddress(String source_ipAddress) {
+        this.source_ipAddress = source_ipAddress;
+    }
+
+    public String source_ipAddress;
+
     public String getTopic() {
         return topic;
     }
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/protocol/LinkMessageDecoder.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/protocol/LinkMessageDecoder.java
index 883e261..edb326e 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/protocol/LinkMessageDecoder.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/protocol/LinkMessageDecoder.java
@@ -119,7 +119,7 @@
 
 
     @Override
-    protected synchronized LinkResponse decoder(Object msg) throws Exception {
+    protected synchronized LinkResponse decoder(Object msg,String ipaddress) throws Exception {
         if (msg instanceof byte[]) {
             bytes.addAll(ByteUtils.toByteList((byte[]) msg));
             //濡傛灉澶氭潯鍛戒护鎵撳寘鍦ㄤ竴鏉℃暟鎹腑锛岄兘闇�瑕佸鐞嗗畬
@@ -157,6 +157,7 @@
                     bytes.add(recevieBytes[i]);
                 }
                 LinkResponse response = new LinkResponse();
+                response.setSource_ipAddress(ipaddress);
                 response.setTopic(topic);
                 if (HDLLinkConfig.getInstance().ifNeedEncrypt(response.getTopic())) {
                     //闇�瑕佽В瀵�
@@ -182,7 +183,8 @@
                 response.setData(bodyString);
                 LogUtils.i( "鎺ユ敹鍒版暟鎹�:" + response.getTopic() + "\r\n" + response.getData());
                 //闈炴甯告暟鎹紝杩斿洖
-                if (!(bodyString.startsWith("{") || bodyString.startsWith("["))) {
+                if (!((bodyString.startsWith("{") &&bodyString.endsWith("}"))
+                        || (bodyString.startsWith("[")&&bodyString.endsWith("]")))) {
                     continue;
                 }
                 //瑙f瀽瀹屾垚,topic鍙戦�佷竴娆�
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 85c48bb..91b96ae 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
@@ -408,11 +408,11 @@
      */
     public void udpSendMsg(String topic, String bodyStr,boolean broadcast) {
         if (TextUtils.isEmpty(topic) || TextUtils.isEmpty(bodyStr)) {
-            LogUtils.e("udpSendMsg", "鍙傛暟涓嶈兘涓虹┖");
+            LogUtils.e( "鍙傛暟涓嶈兘涓虹┖锛屼笉鑳藉彂閫乁DP鏁版嵁");
             return;
         }
         if (!HDLLinkConfig.getInstance().checkIfCertified()) {
-            LogUtils.e("udpSendMsg", "鏈璇侊紝璇峰厛璁よ瘉");
+            LogUtils.e("鏈璇侊紝璇峰厛璁よ瘉鍐嶈皟鐢║DP鍙戦�佹柟娉�");
             return;
         }
         LinkRequest message = new LinkRequest(topic, bodyStr);
@@ -492,7 +492,8 @@
                             }.getType());
                             GatewaySearchBean searchBean = response.getObjects();
                             if (searchBean != null && !TextUtils.isEmpty(searchBean.getGatewayId())) {
-                                if (searchBean.getGatewayId().contains(searchGatewayId)) {
+                                searchBean.setIp_address(linkResponse.getSource_ipAddress());
+                                if (searchBean.getGatewayId().contains(searchGatewayId)&&!TextUtils.isEmpty(searchGatewayId)) {
                                     removeSearchGatewayEvent();//绉婚櫎鎼滅储缃戝叧鐩戝惉
                                     isSearchGatewaySuccess.set(true);//鎼滅储鎴愬姛鏍囪
                                     searchGatewayCount.set(11);//娆℃暟鏍囪
@@ -526,10 +527,14 @@
                             }.getType());
                             GatewaySearchBean gateway = response.getObjects();
                             if (gateway != null && !TextUtils.isEmpty(gateway.getGatewayId())) {
+                                //鍙兘缃戝叧甯﹁繃鏉ョ殑ip涓嶅
+                                gateway.setIp_address(linkResponse.getSource_ipAddress());
                                 //涓荤綉鍏冲苟涓旀槸褰撳墠缁戝畾鐨勭綉鍏�
                                 if ("true".equals(gateway.getMaster().toLowerCase()) && gateway.getGatewayId().equals(HDLLinkConfig.getInstance().getGatewayId())) {
                                     HDLLinkConfig.getInstance().setCurrentGateway(gateway);//璁剧疆褰撳墠缃戝叧
-                                    HDLLinkConfig.getInstance().setIpAddress(gateway.getIp_address());
+                                    if(!TextUtils.isEmpty( gateway.getIp_address())) {
+                                        HDLLinkConfig.getInstance().setIpAddress(gateway.getIp_address());
+                                    }
                                     //鏇存柊褰撳墠缃戝叧鐨勪俊鎭�
                                     HDLLinkConfig.getInstance().reSaveConfig();
                                 }
@@ -582,9 +587,11 @@
                 }
 
                 if (!isSearchGatewaySuccess.get()) {
-                    //鎼滅储10娆★紝鎸囧畾缃戝叧閮芥病鍥炲锛屽洖璋冭秴鏃�
-                    callBackSearchGatewayTimeout();
-                    LogUtils.e("鎼滅储缃戝叧", "鎼滅储10娆★紝鎸囧畾缃戝叧閮芥病鍥炲锛屽洖璋冭秴鏃�");
+                    try {
+                        LogUtils.e("鎼滅储缃戝叧", "鎼滅储10娆★紝鎸囧畾缃戝叧閮芥病鍥炲锛屽洖璋冭秴鏃�");
+                        //鎼滅储10娆★紝鎸囧畾缃戝叧閮芥病鍥炲锛屽洖璋冭秴鏃�
+                        callBackSearchGatewayTimeout();
+                    }catch (Exception e){}
                 }
             }
         }).start();
diff --git a/HDLSDK/hdl-socket/build.gradle b/HDLSDK/hdl-socket/build.gradle
index 535b728..9ba1ed3 100644
--- a/HDLSDK/hdl-socket/build.gradle
+++ b/HDLSDK/hdl-socket/build.gradle
@@ -9,7 +9,7 @@
         minSdkVersion rootProject.minSdkVersion
         targetSdkVersion rootProject.targetSdkVersion
         versionCode 2
-        versionName "1.0.7"
+        versionName "1.0.10"
 
         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
         consumerProguardFiles "consumer-rules.pro"
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/TcpClient.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/TcpClient.java
index 5a62c9a..5ff1097 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/TcpClient.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/TcpClient.java
@@ -119,7 +119,7 @@
                     byte []bytes = new byte[len];
                     System.arraycopy(readBuffer,0,bytes,0,len);
                     //瀹屾暣鐨勬暟鎹墠鍥炶皟
-                    handleMessage.read(bytes);
+                    handleMessage.read(bytes,ip);
                 }
             }
         }
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/UdpClient.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/UdpClient.java
index bc51943..07d368d 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/UdpClient.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/client/UdpClient.java
@@ -154,7 +154,7 @@
             if (handleMessage != null) {
                 byte[] data = new byte[receivePacket.getLength()];
                 System.arraycopy(receivePacket.getData(), 0, data, 0, data.length);
-                handleMessage.read(data);
+                handleMessage.read(data,receivePacket.getAddress().getHostAddress());
             }
 
         } catch (Exception e) {
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/ByteToMessageDecoder.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/ByteToMessageDecoder.java
index ec8da44..2aba6c4 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/ByteToMessageDecoder.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/ByteToMessageDecoder.java
@@ -5,12 +5,12 @@
  */
 public abstract class ByteToMessageDecoder<T> implements IHandleFlow<T> {
 
-    protected abstract T decoder(Object msg)
+    protected abstract T decoder(Object msg,String ipaddress)
             throws Exception;
 
     @Override
-    public final T read(Object data) throws Exception {
-        return decoder(data);
+    public final T read(Object data,String ipaddress) throws Exception {
+        return decoder(data,ipaddress);
     }
 
     @Override
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleFlow.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleFlow.java
index ef62efe..cccb161 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleFlow.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleFlow.java
@@ -5,7 +5,7 @@
  */
 public interface IHandleFlow<T> {
 
-    T read(Object data) throws Exception;
+    T read(Object data,String ipaddress) throws Exception;
 
     byte[] write(byte[] data) throws Exception;
 
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleMessage.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleMessage.java
index 3234d83..caa6229 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleMessage.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/IHandleMessage.java
@@ -4,7 +4,7 @@
  * Created by Tong on 2021/9/27.
  */
 public interface IHandleMessage {
-    void read(byte[] data) throws Exception;
+    void read(byte[] data,String ipaddress) throws Exception;
 
     byte[] write(byte[] data) throws Exception;
 }
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessagePipeLine.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessagePipeLine.java
index 3517fad..1b785dd 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessagePipeLine.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessagePipeLine.java
@@ -22,11 +22,11 @@
     }
 
     @Override
-    public void read(byte[] data) throws Exception {
+    public void read(byte[] data,String ipaddress) throws Exception {
         Object out = data;
         for (int i = 0; i < queue.size(); i++) {
             IHandleFlow flow = queue.get(i);
-            Object read = flow.read(out);
+            Object read = flow.read(out,ipaddress);
             try {
                 out = Objects.requireNonNull(read);
             } catch (Exception ignored) {
diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessageToByteEncoder.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessageToByteEncoder.java
index 13a8201..e70dc84 100644
--- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessageToByteEncoder.java
+++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/codec/MessageToByteEncoder.java
@@ -11,7 +11,7 @@
             throws Exception;
 
     @Override
-    public final Object read(Object data) {
+    public final Object read(Object data,String ipaddress) {
         return data;
     }
 
diff --git a/HDLSDK_DEMO.zip b/HDLSDK_DEMO.zip
index 34cbc9d..41d2bc7 100644
--- a/HDLSDK_DEMO.zip
+++ b/HDLSDK_DEMO.zip
Binary files differ
diff --git a/HDLSDK_DEMO/app/libs/hdl-common-V1.0.3.aar b/HDLSDK_DEMO/app/libs/hdl-common-V1.0.3.aar
deleted file mode 100644
index 395037a..0000000
--- a/HDLSDK_DEMO/app/libs/hdl-common-V1.0.3.aar
+++ /dev/null
Binary files differ
diff --git a/HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar b/HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar
new file mode 100644
index 0000000..4d0c895
--- /dev/null
+++ b/HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar
Binary files differ
diff --git a/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.3.aar b/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.3.aar
deleted file mode 100644
index 53d16c9..0000000
--- a/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.3.aar
+++ /dev/null
Binary files differ
diff --git a/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar b/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar
new file mode 100644
index 0000000..a041595
--- /dev/null
+++ b/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar
Binary files differ
diff --git a/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.3.aar b/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.3.aar
deleted file mode 100644
index f541a33..0000000
--- a/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.3.aar
+++ /dev/null
Binary files differ
diff --git a/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar b/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar
new file mode 100644
index 0000000..e9d3243
--- /dev/null
+++ b/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar
Binary files differ
diff --git a/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java b/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
index c5c8f1e..ab7d315 100644
--- a/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
+++ b/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java
@@ -75,19 +75,69 @@
     void initDeviceInfo()
     {
         AuthenticateRequest.AuthenticateDeviceInfoBean infoBean = new AuthenticateRequest.AuthenticateDeviceInfoBean();
-        infoBean.setDeviceMAC("123456789");
-        infoBean.setIPMAC("12345678900");
+        infoBean.setDeviceMAC("AA000000000000AF");
+        infoBean.setIPMAC("AA000000000000AF");
         infoBean.setDeviceName("闊充箰鎾斁鍣�");//璁惧鍚嶅瓧
         infoBean.setDeviceModel("MCLog.431");//璁惧鍨嬪彿
         infoBean.setAccessMode("WIFI");
-        infoBean.setIPGateway("192.168.88.1");
-        infoBean.setIPAddress("192.168.88.100");
+        infoBean.setIPGateway("192.168.1.1");
+        infoBean.setIPAddress("192.168.1.102");
         infoBean.setGateway_type("music.standard");
         infoBean.setHw_version("HW2.0");
         infoBean.setFw_version("Fw1.0");
-        infoBean.setOID("010105000000FE08");
-        infoBean.setSid("010105000000FE08110100000000");
+        infoBean.setOID("010105000000FE10");//姣忎釜璁惧oid閮借涓嶄竴鏍�
+        infoBean.setSid("110105000000FE08110100000000");//姣忎釜璁惧鐨剆id閮借涓嶄竴鏍�
         HDLLinkConfig.getInstance().setDeviceInfoBean(infoBean);
+    }
+
+    /**
+     * 鍏ョ綉璁よ瘉
+     */
+    void sendAuthenticateRequest() {
+        tv.setText("寮�濮嬪叆缃戣璇�...");
+        //璁よ瘉鎻愪氦鍙傛暟鍑嗗
+//
+//        //娴嬭瘯鏈嶅姟
+//        String spkStr = "ir.module";//浜у搧spk
+//        String macStr = "AA000000000000AF";//璁惧鍞竴MAC鍦板潃
+//        String secret = "44b360eb74b7ba64";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
+
+//        姝e紡鏈嶅姟鍣�
+        String spkStr = "screen.mirror";//浜у搧spk
+        String macStr = "AA000000000000AC";//璁惧鍞竴MAC鍦板潃
+        String secret = "ee62124c151b737c";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
+
+        String mac_key = stringToMD5(stringToMD5(macStr + secret));
+        String versionString = "HDL_V1.0.1";//
+        String time = String.valueOf(System.currentTimeMillis());
+        HDLLinkConfig.getInstance().getDeviceInfoBean().setDeviceMAC(macStr);
+
+        //1.璁剧疆璁よ瘉淇℃伅
+        AuthenticateRequest.RequestBean requestBean = new AuthenticateRequest.RequestBean();
+        requestBean.setMAC(macStr);
+        requestBean.setSupplier("WISE");
+        requestBean.setFirmwareVersion(versionString);
+        requestBean.setHardwareModel("1956F");
+        AuthenticateRequest.AuthBean authbean = new AuthenticateRequest.AuthBean();
+        authbean.setSpk(spkStr);
+        authbean.setMACKey(mac_key);
+        authbean.setRequest(requestBean);
+        //HDLLinkConfig.getInstance().getDeviceInfoBean()杩欎釜鍒濆鍖栫殑鏃跺�欒鍏堣缃ソ
+        AuthenticateRequest request = new AuthenticateRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), authbean);
+        HDLLink.getInstance().startAuthenticateRequest(request, new HDLLinkCallBack() {
+            @Override
+            public void onError(HDLLinkException e) {
+                tv.setText("璁よ瘉澶辫触");
+                responseTv.setText(e.getMsg());
+                Log.i("TAG", "onError: 璁よ瘉澶辫触");
+            }
+
+            @Override
+            public void onSuccess(String msg) {
+                tv.setText("璁よ瘉鎴愬姛");
+                responseTv.setText(msg.toString());
+            }
+        });
     }
 
 
@@ -101,7 +151,7 @@
         rv.setLayoutManager(new LinearLayoutManager(this));
 
         checkIfCertified();
-        initDeviceInfo();
+        initDeviceInfo();//鍒濆鍖�
         registerAllTopicsListener();
 
         ActivityResultLauncher<String[]> launcher = registerForActivityResult(new ActivityResultContracts.RequestMultiplePermissions(), new ActivityResultCallback<Map<String, Boolean>>() {
@@ -269,55 +319,7 @@
         HDLLink.getInstance().removeAllTopicsListener(allTopicsListener);
     }
 
-    /**
-     * 鍏ョ綉璁よ瘉
-     */
-    void sendAuthenticateRequest() {
-        tv.setText("寮�濮嬪叆缃戣璇�...");
-        //璁よ瘉鎻愪氦鍙傛暟鍑嗗
 
-        //娴嬭瘯鏈嶅姟
-        String spkStr = "ir.module";//浜у搧spk
-        String macStr = "AA000000000000BB";//璁惧鍞竴MAC鍦板潃
-        String secret = "87ae414b7a853f65";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
-
-//        //姝e紡鏈嶅姟鍣�
-//        String spkStr = "screen.mirror";//浜у搧spk
-//        String macStr = "AA000000000000AC";//璁惧鍞竴MAC鍦板潃
-//        String secret = "ee62124c151b737c";//閫氳繃spk鍜宮ac鎻愪氦浜戠璁よ瘉鍚庡垎閰嶇殑secret
-
-        String mac_key = stringToMD5(stringToMD5(macStr + secret));
-        String versionString = "HDL_V1.0.1";//
-        String time = String.valueOf(System.currentTimeMillis());
-        HDLLinkConfig.getInstance().getDeviceInfoBean().setDeviceMAC(macStr);
-
-        //1.璁剧疆璁よ瘉淇℃伅
-        AuthenticateRequest.RequestBean requestBean = new AuthenticateRequest.RequestBean();
-        requestBean.setMAC(macStr);
-        requestBean.setSupplier("raysgem");
-        requestBean.setFirmwareVersion(versionString);
-        requestBean.setHardwareModel("1956F");
-        AuthenticateRequest.AuthBean authbean = new AuthenticateRequest.AuthBean();
-        authbean.setSpk(spkStr);
-        authbean.setMACKey(mac_key);
-        authbean.setRequest(requestBean);
-        //HDLLinkConfig.getInstance().getDeviceInfoBean()杩欎釜鍒濆鍖栫殑鏃跺�欒鍏堣缃ソ
-        AuthenticateRequest request = new AuthenticateRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), authbean);
-        HDLLink.getInstance().startAuthenticateRequest(request, new HDLLinkCallBack() {
-            @Override
-            public void onError(HDLLinkException e) {
-                tv.setText("璁よ瘉澶辫触");
-                responseTv.setText(e.getMsg());
-                Log.i("TAG", "onError: 璁よ瘉澶辫触");
-            }
-
-            @Override
-            public void onSuccess(String msg) {
-                tv.setText("璁よ瘉鎴愬姛");
-                responseTv.setText(msg.toString());
-            }
-        });
-    }
 
     String stringToMD5(String text) {
         byte[] hash;

--
Gitblit v1.8.0