فهرست منبع

修改设备网络正常后取消提示框,断网重启多次后还是无网则过2个小时再重启

weizhengliang 1 سال پیش
والد
کامیت
d555912966

+ 17 - 27
conversion_box/src/main/java/com/wdkl/app/ncs/conversion_box/activity/MainActivity.kt

@@ -577,34 +577,7 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
     }
 
     override fun setTcpServerHost(tcpSeverDTO: TcpSeverDTO) {
-        /*if (loaded) {
-            return
-        }
-        loaded = true
-
-        Constant.TCP_SERVER_URL = tcpSeverDTO.localIp
-        Constant.TCP_PORT = tcpSeverDTO.tcpPort
-        Constant.TCP_HEART_BEAT = tcpSeverDTO.readerIdleTime
-
-        //开启TCP连接
-        startTcp()
-        showMessage("tcp开始连接...host: " + Constant.TCP_SERVER_URL + ", port: " + Constant.TCP_PORT)
 
-        Thread(Runnable {
-            while (!initialized) {
-                runOnUiThread(Runnable {
-                    initDevice()
-                })
-                try {
-                    Thread.sleep(15000)
-                } catch (e: Exception) {
-                    //
-                }
-            }
-        }).start()
-
-        //更新
-        tv_mac_addr.setText("MAC: " + Constant.LOCAL_MAC + "\nIP: " + NetHelper.getInstance().localIP + ", server: " + serverIp + ", tcp: " + Constant.TCP_SERVER_URL)*/
     }
 
     override fun setServerInfo(data: ServerInfo) {
@@ -625,6 +598,10 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
         startTcp()
         showMessage("tcp connect...host: " + Constant.TCP_SERVER_URL + ", port: " + Constant.TCP_PORT)
 
+        //网络恢复正常,重置网络计数,取消提醒
+        SettingConfig.setNetErrResetCount(this, 0)
+        WarningDialogHelper.dismiss()
+
         if (data.sipIp != null) {
             Constant.sip_ip = data.sipIp
         }
@@ -2073,11 +2050,13 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
             var count = SettingConfig.getNetErrResetCount(this)
             if (!Constant.TCP_CONNECTED && TextUtils.isEmpty(NetHelper.getInstance().localIP)) {
                 netErrCount++
+                Log.e(TAG, "network error!!! ==> netErrCount: $netErrCount, count: $count")
             } else {
                 netErrCount = 0
                 if (count > 0) {
                     count = 0
                     SettingConfig.setNetErrResetCount(this, count)
+                    WarningDialogHelper.dismiss()
                 }
             }
 
@@ -2091,6 +2070,17 @@ class MainActivity :BaseActivity<MainActivityPresenter, MainActivityLayoutBindin
                     }, 5000)
                 } else {
                     WarningDialogHelper.showDialog(this@MainActivity)
+
+                    //隔2个小时再重启
+                    val calendar = Calendar.getInstance()
+                    val hour = calendar[Calendar.HOUR_OF_DAY]
+                    val minute = calendar[Calendar.MINUTE]
+                    Log.e(TAG, "show net error dialog --> hour: $hour, minute: $minute")
+                    if (hour%2 == 0 && minute == 0) {
+                        handler.postDelayed({
+                            AppUpdateHelper.reboot(activity)
+                        }, 5000)
+                    }
                 }
             }
         }

+ 6 - 0
conversion_box/src/main/java/com/wdkl/app/ncs/conversion_box/helper/WarningDialogHelper.java

@@ -47,4 +47,10 @@ public class WarningDialogHelper {
             e.printStackTrace();
         }
     }
+
+    public static void dismiss() {
+        if (dialog != null) {
+            dialog.dismiss();
+        }
+    }
 }