From 17b81245f31d032d5eed69c190e42edb1949f46b Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 12 四月 2022 16:37:39 +0800
Subject: [PATCH] 修复接听后闪退的问题

---
 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java |   24 +++++++++++++-----------
 1 files changed, 13 insertions(+), 11 deletions(-)

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 91b96ae..0016adc 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
@@ -68,7 +68,7 @@
     /**
      * instance
      */
-    private volatile static HDLAuthSocket instance;
+    private  static final HDLAuthSocket instance=new HDLAuthSocket();
 
     private HDLAuthSocket() {
         initListenerGatewayEvent();
@@ -84,14 +84,14 @@
      *
      * @return HDLAuthSocket
      */
-    public static synchronized HDLAuthSocket getInstance() {
-        if (instance == null) {
-            synchronized (HDLLinkConfig.class) {
-                if (instance == null) {
-                    instance = new HDLAuthSocket();
-                }
-            }
-        }
+    public  static HDLAuthSocket getInstance() {
+//        if (instance == null) {
+//            synchronized (HDLAuthSocket.class) {
+//        if (instance == null) {
+//            instance = new HDLAuthSocket();
+//        }
+//            }
+//        }
         return instance;
     }
 
@@ -110,14 +110,14 @@
      *
      * @return 杩斿洖褰撳墠瀵硅薄
      */
-    private UdpSocketBoot getUdpBoot() {
+    private synchronized UdpSocketBoot getUdpBoot() {
         try {
             if (udpSocketBoot == null) {
                 udpSocketBoot = UdpClient.init(UDP_PORT, getUdpOptions());
                 udpSocketBoot.bind();
             }
         } catch (Exception e) {
-//            return null;
+              LogUtils.e("鍒濆鍖朣ocket udp寮傚父"+e.getMessage());
         }
 
         return udpSocketBoot;
@@ -136,9 +136,11 @@
         //2.鏋勫缓鐩戝惉Listener
 //        authEvent =
         //3.鐩戝惉缃戝叧骞挎挱鐨勫叆缃戞寚浠�
+        EventDispatcher.getInstance().remove(TopicConstant.GATEWAY_AUTH_BROADCAST);
         EventDispatcher.getInstance().register(TopicConstant.GATEWAY_AUTH_BROADCAST, new EventListener() {
             @Override
             public void onMessage(Object msg) {
+                LogUtils.i("鏀跺埌缃戝叧璁よ瘉淇℃伅: ");
                 NetworkAccessBroadcastResponse bean = getNetworkAccessBroadcastResponse(msg);
                 if (bean != null) {
                     //绉婚櫎鐩戝惉

--
Gitblit v1.8.0