From bb6ad792b598927a5459a5fb6f6c27fb1aa9e94e Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 17 十二月 2020 14:06:36 +0800 Subject: [PATCH] 20201217-1 --- HDL-ON_iOS/AppDelegate.cs | 256 +++++++++++++++++++++++--------------------------- 1 files changed, 117 insertions(+), 139 deletions(-) diff --git a/HDL-ON_iOS/AppDelegate.cs b/HDL-ON_iOS/AppDelegate.cs index 0709827..437d7e3 100644 --- a/HDL-ON_iOS/AppDelegate.cs +++ b/HDL-ON_iOS/AppDelegate.cs @@ -8,6 +8,7 @@ using Microsoft.AppCenter.Analytics; using Microsoft.AppCenter.Crashes; using HDL_ON.UI; +using HDL_ON.DAL.Server; namespace SharedMethod { @@ -34,6 +35,7 @@ //} } + } namespace HDL_ON_iOS @@ -97,18 +99,23 @@ // Save new device token NSUserDefaults.StandardUserDefaults.SetString(DeviceToken, "PushDeviceToken"); - string userPhoneName = UIDevice.CurrentDevice.Name; + //UserInfo.Current.PushDeviceToken = DeviceToken; + //UserInfo.Current.PhoneName = userPhoneName; + //UserInfo.Current.SaveUserInfo(); OnAppConfig.Instance.PushDeviceToken = DeviceToken; - OnAppConfig.Instance.PhoneName = userPhoneName; - OnAppConfig.Instance.SaveUserConfig(); + OnAppConfig.Instance.PhoneName = UIDevice.CurrentDevice.Name; + OnAppConfig.Instance.SaveConfig(); } if (OnAppConfig.Instance.PushDeviceToken != DeviceToken) { - string userPhoneName = UIDevice.CurrentDevice.Name; + //string userPhoneName = UIDevice.CurrentDevice.Name; + //UserInfo.Current.PushDeviceToken = DeviceToken; + //UserInfo.Current.PhoneName = userPhoneName; + //UserInfo.Current.SaveUserInfo(); OnAppConfig.Instance.PushDeviceToken = DeviceToken; - OnAppConfig.Instance.PhoneName = userPhoneName; - OnAppConfig.Instance.SaveUserConfig(); + OnAppConfig.Instance.PhoneName = UIDevice.CurrentDevice.Name; + OnAppConfig.Instance.SaveConfig(); } } @@ -128,89 +135,13 @@ if (application.ApplicationState == UIApplicationState.Active || application.ApplicationState == UIApplicationState.Background) { - NSString key_hiddenJson = new NSString("HiddenJson"); - if (userInfo.ContainsKey(key_hiddenJson)) - { - var hiddenJson = userInfo["HiddenJson"].ToString(); - if (string.IsNullOrEmpty(hiddenJson)) - { - return; - } - if (hiddenJson.Contains("cmtID")) - { - /////鐩墠鏍规嵁杩欎釜鍒ゆ柇鏄惁鏄彲瑙嗗璁叉暟鎹� - //VideoMethod(hiddenJson); - } - else - { - - NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary; - if (hiddenJsonDic == null) - { - return; - } - NSString key_Offline = new NSString("Offline"); - if (hiddenJsonDic.ContainsKey(key_Offline)) - { - string signOut = hiddenJsonDic["Offline"].ToString(); - - if (signOut == "0") - { - //涓嶄笅绾� - } - else - { - //寮哄埗涓嬬嚎 - //CommonPage.Instance.SingOut(); - HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices)); - } - } - } - } + HandleNotificationMessageUserInfo(userInfo, false); } else { - NSString key_hiddenJson = new NSString("HiddenJson"); - if (userInfo.ContainsKey(key_hiddenJson)) - { - - var hiddenJson = userInfo["HiddenJson"].ToString(); - if (string.IsNullOrEmpty(hiddenJson)) - { - return; - } - - if (hiddenJson.Contains("cmtID")) - { - /////鐩墠鏍规嵁杩欎釜鍒ゆ柇鏄惁鏄彲瑙嗗璁叉暟鎹� - //VideoMethod(hiddenJson); - } - else - { - - NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary; - if (hiddenJsonDic == null) - { - return; - } - NSString key_Offline = new NSString("Offline"); - if (hiddenJsonDic.ContainsKey(key_Offline)) - { - string signOut = hiddenJsonDic["Offline"].ToString(); - - if (signOut == "0") - { - //涓嶄笅绾� - } - else - { - //鏍囪涓嬬嚎 - haveToSignOut = true; - } - } - } - } + //Inactive + HandleNotificationMessageUserInfo(userInfo, false); } completionHandler(UIBackgroundFetchResult.NewData); @@ -239,8 +170,8 @@ public override void OnResignActivation(UIApplication application) { Console.WriteLine("OnResignActivation"); - OnAppConfig.Instance.unlockTime = DateTime.Now; - //BusSocket.Stop(); + UserInfo.Current.unlockTime = DateTime.Now; + HDL_ON.DriverLayer.UdpSocket._BusSocket.Stop(); } public override void DidEnterBackground(UIApplication application) @@ -253,10 +184,11 @@ public override void WillEnterForeground(UIApplication application) { SharedMethod.SharedMethod.IsBackground = false; - //BusSocket.Start(); + HDL_ON.DriverLayer.UdpSocket._BusSocket.Start(); new AppUnlockPage().LoadPage(); Console.WriteLine("WillEnterForeground"); UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0; + HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway(); } public override void WillTerminate(UIApplication application) @@ -269,12 +201,14 @@ Console.WriteLine("OnActivated"); base.OnActivated(application); - if (haveToSignOut == true) - { - //寮哄埗涓嬬嚎 - //CommonPage.Instance.SingOut(); - HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices)); - } + //if (haveToSignOut == true) + //{ + ////寮哄埗涓嬬嚎 + //UserInfo.Current.LastTime = DateTime.MinValue; + //UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚 + //UserInfo.Current.SaveUserInfo(); + //HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices)); + //} } @@ -282,7 +216,14 @@ { //Shared.Application.FontSize = 12; + + //鍙栨秷EditText榛樿瀵嗙爜杈撳叆鏂瑰紡 + Shared.Application.IsEditTextContentTypePassword = false; + //榛樿浣跨敤鑻规柟瀛椾綋 Shared.Application.IsUsePingFang = true; + //淇濇寔灞忓箷甯镐寒鎴栬�呰嚜鍔ㄩ攣灞� + application.IdleTimerDisabled = false; + Window = new UIWindow(UIScreen.MainScreen.Bounds); rootViewController = new UINavigationController(new ViewController()) { NavigationBarHidden = true }; Window.RootViewController = rootViewController; @@ -305,7 +246,7 @@ // OnAppConfig.Instance.SaveUserConfig(); //} - application.IdleTimerDisabled = true; + application.RegisterForRemoteNotificationTypes(UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound); //window.AccessibilityNavigationStyle = UIAccessibilityNavigationStyle.Automatic; @@ -342,64 +283,100 @@ } /// <summary> - /// 閫�鍑虹櫥褰曟爣璁� + /// 澶勭悊閫氱煡娑堟伅 /// </summary> - bool haveToSignOut; + void HandleNotificationMessageUserInfo(NSDictionary userInfo, bool bFinishedLaunching) + { + try + { + if (userInfo.ContainsKey(new NSString("aps"))) + { + var aps = userInfo["aps"] as NSDictionary; + var alert = aps["alert"] as NSDictionary; + var body = alert["body"] as NSString; + var title = alert["title"] as NSString; + var expandData = ""; + if (userInfo.ContainsKey(new NSString("expandData"))) + { + var expandDataStr = userInfo["expandData"] as NSString; + if(expandDataStr == null) + { + var expandDataNSD = userInfo["expandData"] as NSDictionary; + if (expandDataNSD != null) + { + expandData = expandDataNSD.ToString(); + } + } + else + { + expandData = expandDataStr; + } + + //var expandDataNSD = userInfo["expandData"] as NSDictionary; + //if (expandDataNSD != null && expandDataNSD is NSDictionary) + //{ + // if (expandDataNSD.ContainsKey(new NSString("messageType"))) + // { + // expandData = expandDataNSD["messageType"] as NSString; + // } + //} + } + var pushMes = new JPushMessageInfo() + { + Title = title, + Content = body, + Extras = expandData, + }; + System.Console.WriteLine("PushMes title : " + pushMes.Title); + System.Console.WriteLine("PushMes message : " + pushMes.Content); + System.Console.WriteLine("PushMes extras : " + pushMes.Extras); + + if (bFinishedLaunching) + { + if (pushMes.Extras != null && pushMes.Extras.Contains("OffLine")) + { + //haveToSignOut = true; + //寮哄埗涓嬬嚎 + UserInfo.Current.LastTime = DateTime.MinValue; + UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚 + UserInfo.Current.SaveUserInfo(); + HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices)); + } + } + else + { + HDLCommon.Current.AdjustPushMessage(pushMes); + } + + } + } + catch + { + + } + } + + ///// <summary> + ///// 閫�鍑虹櫥褰曟爣璁� + ///// </summary> + //bool haveToSignOut; /// <summary> - /// 澶勭悊閫氱煡 + /// 鍚姩APP 澶勭悊閫氱煡 /// </summary> /// <param name="launchOptions"></param> void DealWithPushMes(NSDictionary launchOptions) { - haveToSignOut = false; + //haveToSignOut = false; if (launchOptions != null) { // check for a remote notification if (launchOptions.ContainsKey(UIApplication.LaunchOptionsRemoteNotificationKey)) { NSDictionary userInfo = launchOptions[UIApplication.LaunchOptionsRemoteNotificationKey] as NSDictionary; + if (userInfo != null) { - NSString key_hiddenJson = new NSString("HiddenJson"); - if (userInfo.ContainsKey(key_hiddenJson)) - { - var hiddenJson = userInfo["HiddenJson"].ToString(); - if (!string.IsNullOrEmpty(hiddenJson)) - { - if (hiddenJson.Contains("cmtID")) - { - - ///鐩墠鏍规嵁杩欎釜鍒ゆ柇鏄惁鏄彲瑙嗗璁叉暟鎹� - // VideoMethod(hiddenJson); - } - else - { - - NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary; - if (hiddenJsonDic != null) - { - NSString key_Offline = new NSString("Offline"); - if (hiddenJsonDic.ContainsKey(key_Offline)) - { - string signOut = hiddenJsonDic["Offline"].ToString(); - - if (signOut == "0") - { - //涓嶄笅绾� - } - else - { - //鏍囪涓嬬嚎 - haveToSignOut = true; - } - } - - } - } - } - - - } + HandleNotificationMessageUserInfo(userInfo, true); } } @@ -409,5 +386,6 @@ } + } -- Gitblit v1.8.0