From 5b602b536c5be89b2cbfd211025236fb41ba2fa3 Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期一, 18 十二月 2023 17:46:00 +0800
Subject: [PATCH] 充值记录分页加载 补卡用户列表分页加载 通信模块添加日志方便分析长时间链接后不能通讯问题

---
 app/src/main/java/com/dayu/recharge/net/SocketNet.java |  100 ++++++++++++++++++++++++++-----------------------
 1 files changed, 53 insertions(+), 47 deletions(-)

diff --git a/app/src/main/java/com/dayu/recharge/net/SocketNet.java b/app/src/main/java/com/dayu/recharge/net/SocketNet.java
index a75d37f..9783701 100644
--- a/app/src/main/java/com/dayu/recharge/net/SocketNet.java
+++ b/app/src/main/java/com/dayu/recharge/net/SocketNet.java
@@ -5,18 +5,19 @@
 import android.text.TextUtils;
 import android.util.Log;
 
+import com.dayu.recharge.activity.HomeActivity;
 import com.dayu.recharge.dao.BaseDaoSingleton;
 import com.dayu.recharge.dbBean.AdminDataBean;
+import com.dayu.recharge.dbBean.DeviceNumber;
 import com.dayu.recharge.dbBean.IpBean;
 import com.easysocket.EasySocket;
+import com.easysocket.connection.action.SocketStatus;
 import com.easysocket.entity.OriginReadData;
 import com.easysocket.entity.SocketAddress;
 import com.easysocket.interfaces.conn.ISocketActionListener;
 import com.easysocket.interfaces.conn.SocketActionListener;
 import com.dayu.recharge.MyApplication;
-import com.dayu.recharge.utils.ToastUtil;
-import com.dayu.recharge.utils.WSHelper;
-import com.easysocket.utils.LogUtil;
+import com.easysocket.utils.HexUtil;
 
 
 /**
@@ -28,7 +29,7 @@
 public class SocketNet {
     public static SocketNet socketNet;
     SocketCallBack myCallBack;
-    byte[] dataMessage;
+    //    byte[] dataMessage;
     boolean isTest = false;
     Context mContext;
 
@@ -51,12 +52,18 @@
         isTest = false;
         // 鍙戦��
 //        EasySocket.getInstance().upMessage(dataMessage);
-        if (EasySocket.getInstance().getDefOptions().getSocketAddress() != null) {
-            EasySocket.getInstance().disconnect(false);
-            EasySocket.getInstance().connect();
-            this.dataMessage = dataMessage;
+        if (EasySocket.getInstance().getDefconnection() != null) {
+//            EasySocket.getInstance().disconnect(false);
+//            EasySocket.getInstance().connect();
+//            if (EasySocket.getInstance().getDefconnection().getConnectionStatus()== SocketStatus.SOCKET_CONNECTED){
+            EasySocket.getInstance().upMessage(dataMessage);
+//            }else {
+//
+//            }
+
+//            this.dataMessage = dataMessage;
         } else {
-            LogUtil.w("Socket鍦板潃涓虹┖");
+            MyApplication.myApplication.initEasySocket(false, null);
         }
     }
 
@@ -71,8 +78,8 @@
         isTest = true;
         mContext = context;
         if (EasySocket.getInstance().getDefOptions().getSocketAddress() != null && !MyApplication.myApplication.isDoInitMachine) {
-            EasySocket.getInstance().disconnect(false);
-            EasySocket.getInstance().connect();
+//            EasySocket.getInstance().disconnect(false);
+//            EasySocket.getInstance().connect();
         } else {
 //            ToastUtil.show(mContext, "Socket鍦板潃涓虹┖");
         }
@@ -95,31 +102,22 @@
          */
         @Override
         public void onSocketConnSuccess(SocketAddress socketAddress) {
-            Log.i("SocketActionListener", "杩炴帴鎴愬姛");
-            String initCode = WSHelper.getInstance(MyApplication.myApplication).get("initCode", "");
-            if (TextUtils.isEmpty(initCode) && !MyApplication.myApplication.isDoInitMachine) {
-                new Handler().postDelayed(new Runnable() {
-                    @Override
-                    public void run() {
-                        IpBean ipBean = BaseDaoSingleton.getInstance(MyApplication.myApplication).ipDao().findFirst();
-                        AdminDataBean adminData = BaseDaoSingleton.getInstance(MyApplication.myApplication).adminDao().findFirst();
-                        if (ipBean != null && adminData != null) {
-                            MyApplication.myApplication.initMachineRequestBean(ipBean.getIp(), ipBean.getPort(), adminData.getAddressCode());
-                        }
+            Log.i("SocketActionListener1111", "杩炴帴鎴愬姛");
+            MyApplication.myApplication.isConncet = true;
+            AdminDataBean adminData = BaseDaoSingleton.getInstance(MyApplication.myApplication).adminDao().findFirst();
+            Log.i("SocketActionListener1111", "isDoInitMachine==" + MyApplication.myApplication.isDoInitMachine + "");
+            if (!MyApplication.myApplication.isDoInitMachine) {
+                Log.i("SocketActionListener1111", "isDoInitMachine");
+                if (MyApplication.myApplication.ipBean != null && adminData != null) {
+                    if (!TextUtils.isEmpty(adminData.getAddressCode())) {
+                        Log.i("SocketActionListener1111", "initMachineRequestBean");
+                        MyApplication.myApplication.initMachineRequestBean(MyApplication.myApplication.ipBean.getIp(), MyApplication.myApplication.ipBean.getPort(), adminData.getAddressCode());
+
                     }
-                }, 2000);
+                }
 
             }
-            if (dataMessage != null) {
-                EasySocket.getInstance().upMessage(dataMessage);
-            }
-            if (isTest) {
-                MyApplication.myApplication.isConncet = true;
-                EasySocket.getInstance().disconnect(false);
-            } else {
-
-            }
-
+            rushState();
         }
 
         /**
@@ -129,13 +127,14 @@
          */
         @Override
         public void onSocketConnFail(SocketAddress socketAddress, boolean isNeedReconnect) {
-//            isConnected = false;
+            MyApplication.myApplication.isConncet = false;
+            rushState();
             Log.i("SocketActionListener", "socket杩炴帴澶辫触");
             if (isTest) {
-                ToastUtil.show(mContext, "杩炴帴澶辫触,璇锋鏌ョ綉缁�");
+//                ToastUtil.show(mContext, "杩炴帴澶辫触,璇锋鏌ョ綉缁�");
             } else {
                 if (myCallBack != null) {
-                    myCallBack.onSocketError(-1, "socket杩炴帴澶辫触,璇锋鏌ョ綉缁�");
+                    myCallBack.onSocketError(-1, "杩炴帴鏁版嵁涓績澶辫触,璇锋鏌ョ綉缁�");
                 }
             }
         }
@@ -148,33 +147,40 @@
         @Override
         public void onSocketDisconnect(SocketAddress socketAddress, boolean isNeedReconnect) {
             Log.i("SocketActionListener", "---> socket鏂紑杩炴帴锛屾槸鍚﹂渶瑕侀噸杩烇細" + isNeedReconnect);
-
+            MyApplication.myApplication.isConncet = false;
+            rushState();
         }
+
+
 
         /**
          * socket鎺ユ敹鐨勬暟鎹�
          * @param socketAddress
-         * @param readData
+         * @param originReadData
          */
-        @Override
-        public void onSocketResponse(SocketAddress socketAddress, String readData) {
-            Log.i("SocketActionListener", "SocketActionListener鏀跺埌鏁版嵁-->" + readData);
-
-        }
-
         @Override
         public void onSocketResponse(SocketAddress socketAddress, OriginReadData originReadData) {
             super.onSocketResponse(socketAddress, originReadData);
-            Log.i("SocketActionListener", "SocketActionListener鏀跺埌鏁版嵁-->" + originReadData.getBodyString());
+            Log.i("SocketActionListener", "SocketActionListener鏀跺埌鏁版嵁-->" + HexUtil.bytesToHex(originReadData.getBodyBytes()));
             SocketData socketData = new SocketData();
             socketData.setBodyData(originReadData.getBodyBytes());
             socketData.setHeaderData(originReadData.getHeaderData());
-            dataMessage = null;
-            if (myCallBack!=null){
+//            dataMessage = null;
+            if (myCallBack != null) {
                 myCallBack.onSocketResponse(socketData);
             }
 
         }
     };
 
+    private void rushState() {
+        try {
+            if (HomeActivity.homeActivity != null) {
+                HomeActivity.homeActivity.rushState();
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
 }

--
Gitblit v1.8.0