From 2bbb1b72dbce5cf9bd4ac4a5b7488e3f18eaf929 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期六, 19 十二月 2020 18:37:38 +0800
Subject: [PATCH] 2020-12-19 1.IOS和Android网络切换,远程和本地控制切换优化。  2.IOS和Android后台回到前台,搜索网关,远程和本地控制切换优化.

---
 HDL-ON_iOS/AppDelegate.cs |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 8 deletions(-)

diff --git a/HDL-ON_iOS/AppDelegate.cs b/HDL-ON_iOS/AppDelegate.cs
index bd6c6dc..e69297b 100644
--- a/HDL-ON_iOS/AppDelegate.cs
+++ b/HDL-ON_iOS/AppDelegate.cs
@@ -16,7 +16,7 @@
     {
         public static UIApplication sharedApp;
         public static PageLayout CurPageLayout = null;
-        public static bool IsBackground;
+        //public static bool IsBackground;
 
         //public static string CheckVersion()
         //{
@@ -171,24 +171,26 @@
         {
             Console.WriteLine("OnResignActivation");
             UserInfo.Current.unlockTime = DateTime.Now;
-            HDL_ON.DriverLayer.UdpSocket._BusSocket.Stop();
         }
 
         public override void DidEnterBackground(UIApplication application)
         {
-            SharedMethod.SharedMethod.IsBackground = true;
+            //SharedMethod.SharedMethod.IsBackground = true;
+            //MainPage.IsEnterBackground = true;
+            ////杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵��
+            //HDL_ON.DAL.Mqtt.MqttClient.RemoteMqttIsConnecting = false;
+            //HDL_ON.DriverLayer.UdpSocket._BusSocket.Stop();
+            //杩涘叆鍚庡彴
+            BusSocketStop();
             Console.WriteLine("DidEnterBackground");
         }
 
 
         public override void WillEnterForeground(UIApplication application)
         {
-            SharedMethod.SharedMethod.IsBackground = false;
-            HDL_ON.DriverLayer.UdpSocket._BusSocket.Start();
-            new AppUnlockPage().LoadPage();
+            //鍥炲埌鍓嶅彴锛屽鐞嗕簨浠�
+            BusSocketStart();
             Console.WriteLine("WillEnterForeground");
-            UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
-            HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway();
         }
 
         public override void WillTerminate(UIApplication application)
@@ -382,7 +384,47 @@
             }
         }
 
+        /// <summary>
+        /// 杩涘叆鍚庡彴鐨勬椂闂�
+        /// </summary>
+        DateTime CloseTime = DateTime.Now;
 
+        /// <summary>
+        /// 杩涘叆鍚庡彴澶勭悊鏃堕棿
+        /// BusSocketStop
+        /// </summary>
+        void BusSocketStop()
+        {
+            //SharedMethod.SharedMethod.IsBackground = true;
+            CloseTime = DateTime.Now;
+            MainPage.IsEnterBackground = true;
+            //杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵��
+            HDL_ON.DAL.Mqtt.MqttClient.RemoteMqttIsConnecting = false;
+            HDL_ON.DriverLayer.UdpSocket._BusSocket.Stop();
+          
+        }
+
+
+        /// <summary>
+        /// 鍥炲埌鍓嶅彴锛屽鐞嗕簨浠�
+        /// </summary>
+        void BusSocketStart()
+        {
+            if (CloseTime.AddSeconds(10) < DateTime.Now)
+            {
+                //鍚庡彴瓒呰繃10s灏辨柇寮�MQTT閲嶈繛
+                if (HDL_ON.DriverLayer.Control.Ins.IsRemote)
+                {
+                    HDL_ON.DAL.Mqtt.MqttClient.DisConnectRemote("closeTime", false);
+                }
+            }
+
+            MainPage.IsEnterBackground = false;
+            HDL_ON.DriverLayer.UdpSocket._BusSocket.Start();
+            new AppUnlockPage().LoadPage();
+            UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
+            HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway();
+        }
 
     }
 

--
Gitblit v1.8.0