From 5a5a2b696866f947b6025d26c3302e8ffef46435 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期一, 11 一月 2021 16:11:20 +0800 Subject: [PATCH] 2021-01-11 1.更新MQTT连接和本地搜索网关方法。2.子账号相关接口完善 --- Crabtree/ON.Ios/AppDelegate.cs | 112 ++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 89 insertions(+), 23 deletions(-) diff --git a/Crabtree/ON.Ios/AppDelegate.cs b/Crabtree/ON.Ios/AppDelegate.cs index 1793927..884f733 100644 --- a/Crabtree/ON.Ios/AppDelegate.cs +++ b/Crabtree/ON.Ios/AppDelegate.cs @@ -6,6 +6,8 @@ using Microsoft.AppCenter.Analytics; using Microsoft.AppCenter.Crashes; using Shared; +using Shared.SimpleControl; +using SmartHome; using UIKit; using UserNotifications; @@ -33,7 +35,7 @@ // The UIApplicationDelegate for the application. This class is responsible for launching the // User Interface of the application, as well as listening (and optionally responding) to application events from iOS.FinishLaunching [Register ("AppDelegate")] - public class AppDelegate : BaseApplicationDelegate + public class AppDelegate : BaseApplicationDelegateForHdlOn { public override UIWindow Window{ get; @@ -73,9 +75,11 @@ public override bool FinishedLaunching (UIApplication application, NSDictionary launchOptions) { AppCenter.Start ("44cbdfbf-d33e-4e92-a795-1c4452e54d3e", typeof (Analytics), typeof (Crashes)); - Console.WriteLine ("FinishedLaunching"); - base.FinishedLaunching (application, launchOptions); + Utlis.WriteLine ("FinishedLaunching"); + //Shared.Application.IsGpsEnable = false; + //Shared.Application.IsUsePingFang = true; + base.FinishedLaunching (application, launchOptions); SharedMethod.SharedMethod.sharedApp = application; @@ -109,7 +113,7 @@ } if (UIApplication.SharedApplication.ApplicationIconBadgeNumber > 0) { - RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), true); + //RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), true); } //if (UserConfig.Instance.SkinCode == 0) { application.StatusBarStyle = UIStatusBarStyle.DarkContent; @@ -162,23 +166,23 @@ public override void DidReceiveRemoteNotification (UIApplication application, NSDictionary userInfo, Action<UIBackgroundFetchResult> completionHandler) { - Console.WriteLine ("DidReceiveRemoteNotification:" + application.ApplicationState.ToString ()); + Utlis.WriteLine ("DidReceiveRemoteNotification:" + application.ApplicationState.ToString ()); UserConfig.Instance.SaveUserConfig (); - RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), - application.ApplicationState == UIApplicationState.Active ? true : false); + //RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), + // application.ApplicationState == UIApplicationState.Active ? true : false); UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0; } public override void ReceivedRemoteNotification (UIApplication application, NSDictionary userInfo) { if (application.ApplicationState == UIApplicationState.Active) { - Console.WriteLine ("ReceivedRemoteNotification1"); + Utlis.WriteLine ("ReceivedRemoteNotification1"); } else if (application.ApplicationState == UIApplicationState.Background) { - Console.WriteLine ("ReceivedRemoteNotification2"); + Utlis.WriteLine ("ReceivedRemoteNotification2"); } else if (application.ApplicationState == UIApplicationState.Inactive) { - Console.WriteLine ("ReceivedRemoteNotification3"); + Utlis.WriteLine ("ReceivedRemoteNotification3"); } //string extKey1 = "PushResType"; @@ -188,38 +192,99 @@ public override void OnResignActivation (UIApplication application) { - Console.WriteLine ("OnResignActivation"); - Shared.BusSocket.Stop (); + Utlis.WriteLine ("OnResignActivation"); + //Shared.BusSocket.Stop (); + //BusSocketStop (); } public override void DidEnterBackground (UIApplication application) { SharedMethod.SharedMethod.IsBackground = true; - Console.WriteLine ("DidEnterBackground"); + Utlis.WriteLine ("DidEnterBackground"); + BusSocketStop (); } public override void WillEnterForeground (UIApplication application) { SharedMethod.SharedMethod.IsBackground = false; - Console.WriteLine ("WillEnterForeground"); + Utlis.WriteLine ("WillEnterForeground"); //if (UIApplication.SharedApplication.ApplicationIconBadgeNumber > 0) // RemoteInfo.Current.ReadMsgList (NSUserDefaults.StandardUserDefaults.StringForKey ("PushDeviceToken"), true); 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) { - Console.WriteLine ("WillTerminate"); + Utlis.WriteLine ("WillTerminate"); // Called when the application is about to terminate. Save data, if needed. See also DidEnterBackground. } public override void OnActivated (UIApplication application) { - Console.WriteLine ("OnActivated"); + 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 () + { + //杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵�� + MqttCommon.remoteMqttIsConnecting = false; + Shared.BusSocket.Stop (); + closeTime = DateTime.Now; + } + + + /// <summary> + /// BusSocketStart + /// </summary> + void BusSocketStart () + { + if (closeTime == DateTime.MinValue) { + closeTime = DateTime.Now; + } else if (closeTime.AddSeconds (10) < DateTime.Now) { + if (CommonPage.IsRemote) { + MqttCommon.DisConnectRemote ("closeTime", false); + } + } + + var netStatus = (int)Reachability.InternetConnectionStatus (); //鏈変簺绯荤粺鐗堟湰杩欓噷鍚姩姣旇鍥炬帶鍒跺櫒蹇� if (!Shared.SimpleControl.MainPage.Showed) { System.Threading.Tasks.Task.Run (() => { @@ -231,23 +296,24 @@ } Shared.Application.RunOnMainThread (() => { Shared.BusSocket.Start (6000); - Shared.SimpleControl.EquipmentPublicClass.CheckLinkRemote ((int)Reachability.InternetConnectionStatus ()); - 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 ()); if (SmartHome.WiFiSet.refreshView != null) { SmartHome.WiFiSet.refreshView (); } - - - //com.freeview.global.Video.FVapplicationDidBecomeActive (application); + if (netStatus == 0) + return; } } } \ No newline at end of file -- Gitblit v1.8.0