Crabtree/ON.Ios/AppDelegate.cs
@@ -191,13 +191,15 @@
        public override void OnResignActivation (UIApplication application)
        {
            Utlis.WriteLine ("OnResignActivation");
            Shared.BusSocket.Stop ();
            //Shared.BusSocket.Stop ();
            BusSocketStop ();
        }
        public override void DidEnterBackground (UIApplication application)
        {
            SharedMethod.SharedMethod.IsBackground = true;
            Utlis.WriteLine ("DidEnterBackground");
            //BusSocketStop ();
        }
        public override void WillEnterForeground (UIApplication application)
@@ -209,6 +211,7 @@
            UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
            // Called as part of the transiton from background to active state.
            // Here you can undo many of the changes made on entering the background.
            //BusSocketStart ();
        }
        public override void WillTerminate (UIApplication application)
@@ -222,6 +225,61 @@
            Utlis.WriteLine ("OnActivated");
            base.OnActivated (application);
            BusSocketStart ();
            ////有些系统版本这里启动比视图控制器快
            //if (!Shared.SimpleControl.MainPage.Showed) {
            //    System.Threading.Tasks.Task.Run (() => {
            //        while (true) {
            //            System.Threading.Thread.Sleep (10);
            //            if (Shared.SimpleControl.MainPage.Showed) {
            //                break;
            //            }
            //        }
            //        Shared.Application.RunOnMainThread (() => {
            //            Shared.BusSocket.Start (6000);
            //            Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote ((int)Reachability.InternetConnectionStatus (),false);
            //            //RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), true);
            //            if (SmartHome.WiFiSet.refreshView != null) {
            //                SmartHome.WiFiSet.refreshView ();
            //            }
            //        });
            //    });
            //    return;
            //}
            //Shared.BusSocket.Start (6000);
            //Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote ((int)Reachability.InternetConnectionStatus (), false);
            //if (SmartHome.WiFiSet.refreshView != null) {
            //    SmartHome.WiFiSet.refreshView ();
            //}
            //com.freeview.global.Video.FVapplicationDidBecomeActive (application);
        }
        //DateTime closeTime = DateTime.MinValue;
        /// <summary>
        /// BusSocketStop
        /// </summary>
        void BusSocketStop ()
        {
            Shared.BusSocket.Stop ();
            //closeTime = DateTime.Now;
        }
        /// <summary>
        /// BusSocketStart
        /// </summary>
        void BusSocketStart ()
        {
            //if (closeTime == DateTime.MinValue) {
            //    closeTime = DateTime.Now;
            //} else if (closeTime.AddMinutes (2) > DateTime.Now) {
            //    // MqttCommon.DisConnectRemoteMqttClient ();
            //}
            var netStatus = (int)Reachability.InternetConnectionStatus ();
            //有些系统版本这里启动比视图控制器快
            if (!Shared.SimpleControl.MainPage.Showed) {
                System.Threading.Tasks.Task.Run (() => {
@@ -233,23 +291,23 @@
                    }
                    Shared.Application.RunOnMainThread (() => {
                        Shared.BusSocket.Start (6000);
                        Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote ((int)Reachability.InternetConnectionStatus (),false);
                        //RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), true);
                        Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote (netStatus, false);
                        //RemoteInfo.Current.ReadMsgList (true);
                        if (SmartHome.WiFiSet.refreshView != null) {
                            SmartHome.WiFiSet.refreshView ();
                        }
                    });
                });
                return;
            } else {
                Shared.BusSocket.Start (6000);
                Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote (netStatus, false);
                //RemoteInfo.Current.ReadMsgList (true);
            }
            Shared.BusSocket.Start (6000);
            Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote ((int)Reachability.InternetConnectionStatus (), false);
            if (SmartHome.WiFiSet.refreshView != null) {
                SmartHome.WiFiSet.refreshView ();
            }
            //com.freeview.global.Video.FVapplicationDidBecomeActive (application);
        }
    }
}