From 653f2dbcad10e90f40ab478d5e95c5e1d92e484d Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期二, 01 十二月 2020 17:15:29 +0800
Subject: [PATCH] 20201201
---
HDL-ON_iOS/AppDelegate.cs | 233 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 201 insertions(+), 32 deletions(-)
diff --git a/HDL-ON_iOS/AppDelegate.cs b/HDL-ON_iOS/AppDelegate.cs
index 0af72b9..0709827 100644
--- a/HDL-ON_iOS/AppDelegate.cs
+++ b/HDL-ON_iOS/AppDelegate.cs
@@ -23,7 +23,7 @@
// UserConfig.Instance.IsAppStoreVersionNewer = Harpy.Harpy.SharedInstance.TestIsAppStoreVersionNewer;
// UserConfig.Instance.StoreVersion = Harpy.Harpy.SharedInstance.CurrentAppStoreVersion;
// UserConfig.Instance.SaveUserConfig();
- // if (Shared.SimpleControl.MainPage.LoginUser.AccountString == @"464027401@qq.com")
+ // if (Shared.SimpleControl. UserInfo.Current.AccountString == @"464027401@qq.com")
// {
// return $"TestIsAppStoreVersionNewer : {UserConfig.Instance.IsAppStoreVersionNewer};; CurrentAppStoreVersion : {UserConfig.Instance.StoreVersion}";
// }
@@ -41,7 +41,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.
[Register("AppDelegate")]
- public class AppDelegate : BaseApplicationDelegate
+ public class AppDelegate : BaseApplicationDelegateForHdlOn// BaseApplicationDelegate
{
// class-level declarations
@@ -57,6 +57,7 @@
// // If not required for your application you can safely delete this method
// return true;
//}
+ internal static UINavigationController rootViewController;
public static void CleanApplicationIconBadgeNumber()
{
@@ -99,15 +100,15 @@
string userPhoneName = UIDevice.CurrentDevice.Name;
OnAppConfig.Instance.PushDeviceToken = DeviceToken;
- //UserConfig.Instance.phoneName = userPhoneName;
- //UserConfig.Instance.SaveUserConfig();
+ OnAppConfig.Instance.PhoneName = userPhoneName;
+ OnAppConfig.Instance.SaveUserConfig();
}
if (OnAppConfig.Instance.PushDeviceToken != DeviceToken)
{
string userPhoneName = UIDevice.CurrentDevice.Name;
OnAppConfig.Instance.PushDeviceToken = DeviceToken;
- //UserConfig.Instance.phoneName = userPhoneName;
- //UserConfig.Instance.SaveUserConfig();
+ OnAppConfig.Instance.PhoneName = userPhoneName;
+ OnAppConfig.Instance.SaveUserConfig();
}
}
@@ -117,6 +118,102 @@
//璇诲彇鎺ㄩ�佷俊鎭�
UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
+
+ if (userInfo == null)
+ {
+ return;
+ }
+
+ Console.WriteLine(userInfo);
+
+ 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));
+ }
+ }
+ }
+ }
+ }
+ 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;
+ }
+ }
+ }
+ }
+
+ }
+ completionHandler(UIBackgroundFetchResult.NewData);
}
public override void ReceivedRemoteNotification(UIApplication application, NSDictionary userInfo)
@@ -142,7 +239,8 @@
public override void OnResignActivation(UIApplication application)
{
Console.WriteLine("OnResignActivation");
- BusSocket.Stop();
+ OnAppConfig.Instance.unlockTime = DateTime.Now;
+ //BusSocket.Stop();
}
public override void DidEnterBackground(UIApplication application)
@@ -155,7 +253,7 @@
public override void WillEnterForeground(UIApplication application)
{
SharedMethod.SharedMethod.IsBackground = false;
- //BusSocket.Start(6000);
+ //BusSocket.Start();
new AppUnlockPage().LoadPage();
Console.WriteLine("WillEnterForeground");
UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
@@ -171,11 +269,25 @@
Console.WriteLine("OnActivated");
base.OnActivated(application);
+ if (haveToSignOut == true)
+ {
+ //寮哄埗涓嬬嚎
+ //CommonPage.Instance.SingOut();
+ HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices));
+ }
+
}
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
{
- Shared.Application.IsGpsEnable = true;
+
+ //Shared.Application.FontSize = 12;
+ Shared.Application.IsUsePingFang = true;
+ Window = new UIWindow(UIScreen.MainScreen.Bounds);
+ rootViewController = new UINavigationController(new ViewController()) { NavigationBarHidden = true };
+ Window.RootViewController = rootViewController;
+ Window.MakeKeyAndVisible();
+
AppCenter.Start("e1add75a-82c6-4a5c-a902-4705b195748e",typeof(Analytics), typeof(Crashes));
base.FinishedLaunching(application, launchOptions);
@@ -183,34 +295,23 @@
//NSString* nsCount = [[NSLocale currentLocale] objectForKey: NSLocaleCountryCode];
application.StatusBarStyle = UIStatusBarStyle.DarkContent;
- string nsCount = NSLocale.CurrentLocale.CountryCode;
- if (nsCount != OnAppConfig.Instance.CountryCode)
- {
- OnAppConfig.Instance.CountryCode = nsCount;
- OnAppConfig.Instance.SaveUserConfig();
- }
+ //string nsCount = NSLocale.CurrentLocale.CountryCode;
+
+ //if ( UserInfo.Current != null && nsCount != UserInfo.Current.areaCode.ToString())
+ //{
+ // //int.TryParse(nsCount,out UserInfo.Current.areaCode);
+ // //2020-11-18
+ // UserInfo.Current.areaCode = nsCount;
+ // OnAppConfig.Instance.SaveUserConfig();
+ //}
+
application.IdleTimerDisabled = true;
application.RegisterForRemoteNotificationTypes(UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound);
- Window = new UIWindow(UIScreen.MainScreen.Bounds);
- var Root = new UINavigationController(new ViewController()) { NavigationBarHidden = true };
- Window.RootViewController = Root;
- Window.MakeKeyAndVisible();
//window.AccessibilityNavigationStyle = UIAccessibilityNavigationStyle.Automatic;
// check for a notification
- if (launchOptions != null)
- {
- // check for a remote notification
- if (launchOptions.ContainsKey(UIApplication.LaunchOptionsRemoteNotificationKey))
- {
-
- NSDictionary remoteNotification = launchOptions[UIApplication.LaunchOptionsRemoteNotificationKey] as NSDictionary;
- if (remoteNotification != null)
- {
- //UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
- }
- }
- }
+ DealWithPushMes(launchOptions);
+
if (UIDevice.CurrentDevice.CheckSystemVersion(8, 0))
{
var notificationSettings = UIUserNotificationSettings.GetSettingsForTypes(UIUserNotificationType.Alert | UIUserNotificationType.Badge | UIUserNotificationType.Sound, null);
@@ -239,6 +340,74 @@
Console.WriteLine("FinishedLaunching");
return true;
}
+
+ /// <summary>
+ /// 閫�鍑虹櫥褰曟爣璁�
+ /// </summary>
+ bool haveToSignOut;
+ /// <summary>
+ /// 澶勭悊閫氱煡
+ /// </summary>
+ /// <param name="launchOptions"></param>
+ void DealWithPushMes(NSDictionary launchOptions)
+ {
+ 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;
+ }
+ }
+
+ }
+ }
+ }
+
+
+ }
+
+ }
+ }
+ }
+ }
+
+
+
}
}
--
Gitblit v1.8.0