From 2a900e186e9ddf97facd33082df063183c7483b8 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期五, 27 九月 2024 09:51:56 +0800
Subject: [PATCH] 阿里云日志,注册
---
HDL-ON_iOS/AppDelegate.cs | 230 ++++++++++++++++++++++++++++++++-------------------------
1 files changed, 129 insertions(+), 101 deletions(-)
diff --git a/HDL-ON_iOS/AppDelegate.cs b/HDL-ON_iOS/AppDelegate.cs
index af7af24..a6a7280 100644
--- a/HDL-ON_iOS/AppDelegate.cs
+++ b/HDL-ON_iOS/AppDelegate.cs
@@ -3,13 +3,12 @@
using HDL_ON;
using Shared;
using UIKit;
-using UserNotifications;
-using Microsoft.AppCenter;
-using Microsoft.AppCenter.Analytics;
-using Microsoft.AppCenter.Crashes;
using HDL_ON.UI;
using HDL_ON.DAL.Server;
-using Intents;
+using System.Threading.Tasks;
+using UserNotifications;
+using Other;
+using AVFoundation;
namespace SharedMethod
{
@@ -54,17 +53,22 @@
set;
}
- //public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
- //{
- // // Override point for customization after application launch.
- // // If not required for your application you can safely delete this method
- // return true;
- //}
public static UINavigationController rootViewController;
- public static void CleanApplicationIconBadgeNumber()
+ //public static void CleanApplicationIconBadgeNumber()
+ //{
+ // UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
+ //}
+
+ [Export("application:shouldAllowExtensionPointIdentifier:")]
+ public override bool ShouldAllowExtensionPointIdentifier(UIApplication application, NSString extensionPointIdentifier)
{
- UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
+ //if (extensionPointIdentifier == UIApplicationKeyboardExtensionPointIdentifier)
+ //{
+ // return false;
+ //}
+ return true;
+
}
public override void RegisteredForRemoteNotifications(UIApplication application, NSData deviceToken)
@@ -92,14 +96,7 @@
// Get previous device token
var oldDeviceToken = NSUserDefaults.StandardUserDefaults.StringForKey("PushDeviceToken");
- //new Alert("", DeviceToken, "鍙栨秷", "纭畾").Show();
- //NSDictionary test = new NSDictionary(new NSString("123"), new NSString("test"));
- //NSError error;
- //NSData dicD = NSJsonSerialization.Serialize(test, NSJsonWritingOptions.PrettyPrinted,out error); ;
- //NSString str = new NSString(dicD,NSStringEncoding.UTF8);
-
- //new Alert("", str, "鍙栨秷", "纭畾").Show();
// Has the token changed?
if (string.IsNullOrEmpty(oldDeviceToken) || !oldDeviceToken.Equals(DeviceToken))
@@ -109,19 +106,12 @@
// Save new device token
NSUserDefaults.StandardUserDefaults.SetString(DeviceToken, "PushDeviceToken");
- //UserInfo.Current.PushDeviceToken = DeviceToken;
- //UserInfo.Current.PhoneName = userPhoneName;
- //UserInfo.Current.SaveUserInfo();
OnAppConfig.Instance.PushDeviceToken = DeviceToken;
OnAppConfig.Instance.PhoneName = UIDevice.CurrentDevice.Name;
OnAppConfig.Instance.SaveConfig();
}
if (OnAppConfig.Instance.PushDeviceToken != DeviceToken)
{
- //string userPhoneName = UIDevice.CurrentDevice.Name;
- //UserInfo.Current.PushDeviceToken = DeviceToken;
- //UserInfo.Current.PhoneName = userPhoneName;
- //UserInfo.Current.SaveUserInfo();
OnAppConfig.Instance.PushDeviceToken = DeviceToken;
OnAppConfig.Instance.PhoneName = UIDevice.CurrentDevice.Name;
OnAppConfig.Instance.SaveConfig();
@@ -130,34 +120,16 @@
public override void DidReceiveRemoteNotification(UIApplication application, NSDictionary userInfo, Action<UIBackgroundFetchResult> completionHandler)
{
- Console.WriteLine("DidReceiveRemoteNotification:" + application.ApplicationState.ToString());
-
- Console.WriteLine("鎺ㄩ�佹秷鎭細"+userInfo);
- //var test = new NSDictionary();
- //test.SetNilValueForKey(new NSString("test"));
- //NSError error;
- //NSData dicD = NSJsonSerialization.Serialize(userInfo, NSJsonWritingOptions.PrettyPrinted, out error); ;
- //NSString str = new NSString(dicD, NSStringEncoding.UTF8);
- //new Alert("", str, "鍙栨秷", "纭畾").Show();
-
- //璇诲彇鎺ㄩ�佷俊鎭�
- UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
-
if (userInfo == null)
{
return;
}
- Console.WriteLine(userInfo);
- //HDLCommon.Current.ShowAlert("DidReceiveRemoteNotification:" + userInfo.ToString());
-
-
- if (application.ApplicationState == UIApplicationState.Active || application.ApplicationState == UIApplicationState.Background)
- {
-
- HandleNotificationMessageUserInfo(userInfo, false);
- }
- else
+ //if (application.ApplicationState == UIApplicationState.Active || application.ApplicationState == UIApplicationState.Background)
+ //{
+ // HandleNotificationMessageUserInfo(userInfo, false);
+ //}
+ //else
{
//Inactive
HandleNotificationMessageUserInfo(userInfo, false);
@@ -180,26 +152,30 @@
{
Console.WriteLine("ReceivedRemoteNotification3");
}
-
- //string extKey1 = "PushResType";
- //NSString extValue1 = userInfo.ValueForKey ((NSString)extKey1);
-
}
public override void OnResignActivation(UIApplication application)
{
//璁剧疆鍏ㄨ閫氱姸鎬�
- Shared.IOS.HDLFVSDK.Video.FVapplicationWillResignActive(application);
-
+ //string systemVersion = UIKit.UIDevice.CurrentDevice.SystemVersion;
+ //string errorVersion = "16.2.0";
+ //if (systemVersion.CompareTo(errorVersion) < 0)///鍏ㄨ閫氫笉鍏煎ios16浠ヤ笂鐨勭郴缁燂紝涓嶈鍔犺浇杩欎釜鍏�
+ //{
+ // Shared.IOS.HDLFVSDK.Video.FVapplicationWillResignActive(application);
+ //}
Console.WriteLine("OnResignActivation");
- UserInfo.Current.unlockTime = DateTime.Now;
+ //UserInfo.Current.unlockTime = DateTime.Now;
}
public override void DidEnterBackground(UIApplication application)
{
//璁剧疆鍏ㄨ閫氱姸鎬�
- Shared.IOS.HDLFVSDK.Video.FVapplicationDidEnterBackground(application);
-
+ //string systemVersion = UIKit.UIDevice.CurrentDevice.SystemVersion;
+ //string errorVersion = "16.2.0";
+ //if (systemVersion.CompareTo(errorVersion) < 0)///鍏ㄨ閫氫笉鍏煎ios16浠ヤ笂鐨勭郴缁燂紝涓嶈鍔犺浇杩欎釜鍏�
+ //{
+ // Shared.IOS.HDLFVSDK.Video.FVapplicationDidEnterBackground(application);
+ //}
//SharedMethod.SharedMethod.IsBackground = true;
//MainPage.IsEnterBackground = true;
////杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵��
@@ -226,9 +202,14 @@
public override void OnActivated(UIApplication application)
{
//璁剧疆鍏ㄨ閫氱姸鎬�
- Shared.IOS.HDLFVSDK.Video.FVapplicationDidBecomeActive(application);
-
+ //string systemVersion = UIKit.UIDevice.CurrentDevice.SystemVersion;
+ //string errorVersion = "16.2.0";
+ //if (systemVersion.CompareTo(errorVersion) < 0)///鍏ㄨ閫氫笉鍏煎ios16浠ヤ笂鐨勭郴缁燂紝涓嶈鍔犺浇杩欎釜鍏�
+ //{
+ // Shared.IOS.HDLFVSDK.Video.FVapplicationDidBecomeActive(application);
+ //}
Console.WriteLine("OnActivated");
+
base.OnActivated(application);
//HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway();
@@ -248,21 +229,21 @@
/// </summary>
void SetCurrentLanguage()
{
- if (string.IsNullOrEmpty(OnAppConfig.Instance.SetLanguage))
- {
+ //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 if (NSLocale.PreferredLanguages[0].Contains("cs-"))
+ //{
+ // Language.CurrentLanguage = "Czech";
+ //}
else if (NSLocale.PreferredLanguages[0].Contains("ru-"))
{
Language.CurrentLanguage = "russian";
}
- else if (NSLocale.PreferredLanguages[0].Contains( "bul"))
+ else if (NSLocale.PreferredLanguages[0].Contains("bul"))
{
Language.CurrentLanguage = "斜褗谢谐邪褉褋泻懈";
}
@@ -270,27 +251,50 @@
{
Language.CurrentLanguage = "Spanish";
}
+ //else if(NSLocale.PreferredLanguages[0].Contains("uk-")){
+ // Language.CurrentLanguage = "Ukraine";
+ //}
else
{
Language.CurrentLanguage = "English";
}
- }
- else
- {
- Language.CurrentLanguage = OnAppConfig.Instance.SetLanguage;
- }
+ //}
+ //else
+ //{
+ // Language.CurrentLanguage = OnAppConfig.Instance.SetLanguage;
+ //}
}
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
{
+ #region 寮傚父鎹曡幏 2023-07-27 17:37:04
+ AppDomain.CurrentDomain.UnhandledException += (sender, e) => {
+ if(e.ExceptionObject is Exception exception)
+ {
+ MainPage.Log("error", "鏈鐞嗙殑寮傚父锛�" + exception.Message + "StackTrace: " + exception.StackTrace);
+ }
+ };
+
+ TaskScheduler.UnobservedTaskException += (sender, e) => {
+ if (e.Exception is Exception exception)
+ {
+ MainPage.Log("error", "鏈鐞嗙殑寮傚父锛�" + exception.Message + "StackTrace: " + exception.StackTrace);
+ }
+ };
+ #endregion
+
//璁剧疆鍏ㄨ閫氱姸鎬�
- Shared.IOS.HDLFVSDK.Video.FVapplication(application, new NSDictionary());
-
- Console.WriteLine("111111111111");
+ //string systemVersion = UIKit.UIDevice.CurrentDevice.SystemVersion;
+ //string errorVersion = "16.2.0";
+ //if (systemVersion.CompareTo(errorVersion) < 0)///鍏ㄨ閫氫笉鍏煎ios16浠ヤ笂鐨勭郴缁燂紝涓嶈鍔犺浇杩欎釜鍏�
+ //{
+ // Shared.IOS.HDLFVSDK.Video.FVapplication(application, new NSDictionary());
+ //}
+ //Console.WriteLine("111111111111");
SetCurrentLanguage();
//Shared.Application.FontSize = 12;
- //Bugly.Bugly.StartWithAppId("b58fb35436");
+ //Bugly.Bugly.StartWithAppId("1dc40c170a");
//鍙栨秷EditText榛樿瀵嗙爜杈撳叆鏂瑰紡
//Shared.Application.IsEditTextContentTypePassword = false;
//榛樿浣跨敤鑻规柟瀛椾綋
@@ -304,8 +308,6 @@
Window.RootViewController = rootViewController;
Window.MakeKeyAndVisible();
- 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;
@@ -313,19 +315,27 @@
// check for a notification
DealWithPushMes(launchOptions);
- //if (UIApplication.SharedApplication.ApplicationIconBadgeNumber > 0)
+ try
+ {
+ UMSdk.HDLUMSDK.InitUMSDKWithAppKey("61d56642e0f9bb492bbc3e72", "IOS");
+ }
+ catch(Exception ex)
+ {
+ Console.WriteLine("鍚姩鍙嬬洘SDK寮傚父锛�"+ex.Message);
+ }
+
+ //// 娉ㄥ唽杩涘叆鍓嶅彴鐨勯�氱煡
+ //NSNotificationCenter.DefaultCenter.AddObserver(UIApplication.WillEnterForegroundNotification, (notification) =>
//{
- // //RemoteInfo.Current.ReadMsgList(true);
- //}
+ // // 鍋滄鎾斁閾冨0
+ // UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
+ // UNUserNotificationCenter.Current.RemoveAllDeliveredNotifications();
+ //});
- //楂樺痉key
- GDMapKit.setGDApiKey("f0635ea15c5d579c6e93d9f07a06da69");
-
- //楂樺痉key
- GDMapKit.setGDApiKey("f0635ea15c5d579c6e93d9f07a06da69");
Console.WriteLine("FinishedLaunching");
return true;
}
+
/// <summary>
/// 澶勭悊閫氱煡娑堟伅
@@ -348,13 +358,14 @@
if (userInfo.ContainsKey(new NSString("expandData")))
{
var expandDataStr = userInfo["expandData"] as NSString;
- if(expandDataStr == null)
+ if (expandDataStr == null)
{
var expandDataNSD = userInfo["expandData"] as NSDictionary;
if (expandDataNSD != null)
{
expandData = expandDataNSD.ToString();
- if(expandDataNSD.ContainsKey(new NSString("messageType"))){
+ if (expandDataNSD.ContainsKey(new NSString("messageType")))
+ {
messageType = expandDataNSD["messageType"] as NSString;
Utlis.WriteLine("messageType: " + messageType);
}
@@ -392,11 +403,6 @@
Utlis.WriteLine("PushMes title : " + pushMes.Title);
Utlis.WriteLine("PushMes message : " + pushMes.Content);
Utlis.WriteLine("PushMes extras : " + pushMes.Extras);
- if (!string.IsNullOrEmpty(pushMes.spk))//鑷爺鍙瀵硅闇�瑕佽褰曟椂闂村弽鍛�
- {
- UserInfo.Current.pushMessageInfo = pushMes;
- UserInfo.Current.inCall = DateTime.Now;
- }
if (bFinishedLaunching)
{
@@ -404,24 +410,25 @@
{
if (pushMes.Extras.Contains("OffLine"))
{
- //haveToSignOut = true;
//寮哄埗涓嬬嚎
- UserInfo.Current.LastTime = DateTime.MinValue;
+ UserInfo.Current.ValidToken = false;
UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//閲嶇疆鐢ㄦ埛澶村儚
UserInfo.Current.SaveUserInfo();
HDLCommon.Current.ShowAlert(Language.StringByID(StringId.LoggedOnOtherDevices));
}
else
{
- HDLCommon.Current.AdjustPushMessage(pushMes);
+ //HDLCommon.Current.AdjustPushMessage(pushMes);
+ this.CommonAdjustPushMessage(pushMes);//2023骞�04鏈�13鏃�15:55:54 淇敼
}
}
}
else
{
- HDLCommon.Current.AdjustPushMessage(pushMes);
+ //HDLCommon.Current.AdjustPushMessage(pushMes);
+ this.CommonAdjustPushMessage(pushMes);
}
-
+
}
}
catch
@@ -474,7 +481,7 @@
//杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵��
HDL_ON.DAL.Mqtt.MqttClient.RemoteMqttIsConnecting = false;
HDL_ON.DriverLayer.UdpSocket._BusSocket.Stop();
-
+
}
@@ -494,12 +501,33 @@
MainPage.IsEnterBackground = false;
HDL_ON.DriverLayer.UdpSocket._BusSocket.Start();
- new AppUnlockPage().LoadPage();
+ //閲嶈繛mqtt闃叉mqtt杩涘叆鍋囨鐘舵�� 2023-05-03 22:55:12 wxr
+ HDL_ON.DAL.Mqtt.MqttClient.InitState();
+
+
+ //new AppUnlockPage().LoadPage();
UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway();
}
+ public void CommonAdjustPushMessage(JPushMessageInfo pushMes)
+ {
+ new System.Threading.Thread(new System.Threading.ThreadStart(() =>
+ {
+ while (MainPage.BasePageView == null)
+ {
+ System.Threading.Thread.Sleep(300);
+ }
+ Shared.Application.RunOnMainThread(() =>
+ {
+ HDLCommon.Current.AdjustPushMessage(pushMes);
+ });
+ })).Start();
+
+ }
+
+
}
}
--
Gitblit v1.8.0