From f0c43581e672e4ec82636102227edf61fbad33bd Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 16 七月 2021 18:37:29 +0800
Subject: [PATCH] 修复房间错误加载音乐列表导致闪退问题
---
HDL-ON_iOS/AppDelegate.cs | 216 ++++++++++++++++++++++++++++++++++-------------------
1 files changed, 137 insertions(+), 79 deletions(-)
diff --git a/HDL-ON_iOS/AppDelegate.cs b/HDL-ON_iOS/AppDelegate.cs
index 456c684..03ce2b3 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()
//{
@@ -132,6 +132,8 @@
}
Console.WriteLine(userInfo);
+ //HDLCommon.Current.ShowAlert("DidReceiveRemoteNotification:" + userInfo.ToString());
+
if (application.ApplicationState == UIApplicationState.Active || application.ApplicationState == UIApplicationState.Background)
{
@@ -171,24 +173,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)
@@ -200,86 +204,78 @@
{
Console.WriteLine("OnActivated");
base.OnActivated(application);
+ //HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway();
//if (haveToSignOut == true)
//{
- ////寮哄埗涓嬬嚎
- //UserInfo.Current.LastTime = DateTime.MinValue;
- //UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚
- //UserInfo.Current.SaveUserInfo();
- //HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices));
+ ////寮哄埗涓嬬嚎
+ //UserInfo.Current.LastTime = DateTime.MinValue;
+ //UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚
+ //UserInfo.Current.SaveUserInfo();
+ //HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices));
//}
}
+ /// <summary>
+ /// 璁剧疆褰撳墠浣跨敤璇█
+ /// </summary>
+ void SetCurrentLanguage()
+ {
+ if (string.IsNullOrEmpty(OnAppConfig.Instance.SetLanguage))
+ {
+ if (NSLocale.PreferredLanguages[0].Contains("zh-"))
+ {
+ Language.CurrentLanguage = "Chinese";
+ }
+ else if (NSLocale.PreferredLanguages[0].Contains("cs-"))
+ {
+ Language.CurrentLanguage = "Czech";
+ }
+ else
+ {
+ Language.CurrentLanguage = "English";
+ }
+ }
+ else
+ {
+ Language.CurrentLanguage = OnAppConfig.Instance.SetLanguage;
+ }
+ }
+
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
{
-
+ Console.WriteLine("111111111111");
+ SetCurrentLanguage();
//Shared.Application.FontSize = 12;
-
+ //Bugly.Bugly.StartWithAppId("b58fb35436");
//鍙栨秷EditText榛樿瀵嗙爜杈撳叆鏂瑰紡
- Shared.Application.IsEditTextContentTypePassword = false;
+ //Shared.Application.IsEditTextContentTypePassword = false;
//榛樿浣跨敤鑻规柟瀛椾綋
Shared.Application.IsUsePingFang = true;
- ////榛樿绂佹闊充箰鏈嶅姟
- //Shared.Application.IsMusicEnable = false;
//淇濇寔灞忓箷甯镐寒鎴栬�呰嚜鍔ㄩ攣灞�
application.IdleTimerDisabled = false;
+ base.FinishedLaunching(application, launchOptions);
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);
+ AppCenter.Start("e1add75a-82c6-4a5c-a902-4705b195748e", typeof(Analytics), typeof(Crashes));
SharedMethod.SharedMethod.sharedApp = application;
//NSString* nsCount = [[NSLocale currentLocale] objectForKey: NSLocaleCountryCode];
application.StatusBarStyle = UIStatusBarStyle.DarkContent;
-
- //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.RegisterForRemoteNotificationTypes(UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge | UIRemoteNotificationType.Sound);
-
//window.AccessibilityNavigationStyle = UIAccessibilityNavigationStyle.Automatic;
// check for a notification
DealWithPushMes(launchOptions);
+
+ //if (UIApplication.SharedApplication.ApplicationIconBadgeNumber > 0)
+ //{
+ // //RemoteInfo.Current.ReadMsgList(true);
+ //}
- if (UIDevice.CurrentDevice.CheckSystemVersion(8, 0))
- {
- var notificationSettings = UIUserNotificationSettings.GetSettingsForTypes(UIUserNotificationType.Alert | UIUserNotificationType.Badge | UIUserNotificationType.Sound, null);
- application.RegisterUserNotificationSettings(notificationSettings);
- application.RegisterForRemoteNotifications();
- }
- else
- {
- //==== register for remote notifications and get the device token
- // set what kind of notification types we want
- UIRemoteNotificationType notificationTypes = UIRemoteNotificationType.Alert | UIRemoteNotificationType.Badge;
- // register for remote notifications
- UIApplication.SharedApplication.RegisterForRemoteNotificationTypes(notificationTypes);
- }
-
- if (UIApplication.SharedApplication.ApplicationIconBadgeNumber > 0)
- {
- //RemoteInfo.Current.ReadMsgList(true);
- }
-
- //Harpy.Harpy.SharedInstance.PresentingViewController = this.Window.RootViewController;
- //Harpy.Harpy.SharedInstance.WeakDelegate = this;
- //Harpy.Harpy.SharedInstance.AlertType = Harpy.HarpyAlertType.Skip;
- //Harpy.Harpy.SharedInstance.DebugEnabled = false;
- //Harpy.Harpy.SharedInstance.ForceLanguageLocalization = Harpy.Constants.HarpyLanguageChineseSimplified;
Console.WriteLine("FinishedLaunching");
return true;
}
@@ -298,6 +294,9 @@
var body = alert["body"] as NSString;
var title = alert["title"] as NSString;
var expandData = "";
+ var messageType = "";
+ var expantContent = "";
+ var homeId = "";
if (userInfo.ContainsKey(new NSString("expandData")))
{
var expandDataStr = userInfo["expandData"] as NSString;
@@ -307,6 +306,23 @@
if (expandDataNSD != null)
{
expandData = expandDataNSD.ToString();
+ if(expandDataNSD.ContainsKey(new NSString("messageType"))){
+ messageType = expandDataNSD["messageType"] as NSString;
+ Utlis.WriteLine("messageType: " + messageType);
+ }
+
+ if (expandDataNSD.ContainsKey(new NSString("expantContent")))
+ {
+ expantContent = expandDataNSD["expantContent"] as NSString;
+ Utlis.WriteLine("expantContent: " + expantContent);
+ }
+
+ if (expandDataNSD.ContainsKey(new NSString("homeId")))
+ {
+ homeId = expandDataNSD["homeId"].ToString();
+ Utlis.WriteLine("homeId: " + homeId);
+ }
+
}
}
else
@@ -314,35 +330,37 @@
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()
{
+ HomeId = homeId,
Title = title,
Content = body,
Extras = expandData,
+ messageType = messageType,
+ expantContent = expantContent
};
- System.Console.WriteLine("PushMes title : " + pushMes.Title);
- System.Console.WriteLine("PushMes message : " + pushMes.Content);
- System.Console.WriteLine("PushMes extras : " + pushMes.Extras);
+ Utlis.WriteLine("PushMes title : " + pushMes.Title);
+ Utlis.WriteLine("PushMes message : " + pushMes.Content);
+ Utlis.WriteLine("PushMes extras : " + pushMes.Extras);
if (bFinishedLaunching)
{
- if (pushMes.Extras != null && pushMes.Extras.Contains("OffLine"))
+ if (pushMes.Extras != null)
{
- //haveToSignOut = true;
- //寮哄埗涓嬬嚎
- UserInfo.Current.LastTime = DateTime.MinValue;
- UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚
- UserInfo.Current.SaveUserInfo();
- HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices));
+ if (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);
+ }
}
}
else
@@ -354,7 +372,7 @@
}
catch
{
-
+ //HDLCommon.Current.ShowAlert("catch2222");
}
}
@@ -378,14 +396,54 @@
if (userInfo != null)
{
- HandleNotificationMessageUserInfo(userInfo, true);
+ //HandleNotificationMessageUserInfo(userInfo, true);
}
}
}
}
+ /// <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