From 8d825766e377363597753ab27a0d381e41732e58 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 26 三月 2021 10:48:04 +0800
Subject: [PATCH] 新风
---
HDL-ON_Android/Application.cs | 152 +++++++++++++++++++++++++++++++++++++-------------
1 files changed, 112 insertions(+), 40 deletions(-)
diff --git a/HDL-ON_Android/Application.cs b/HDL-ON_Android/Application.cs
index 2d2491d..bb0bab8 100644
--- a/HDL-ON_Android/Application.cs
+++ b/HDL-ON_Android/Application.cs
@@ -1,10 +1,13 @@
锘縰sing System;
using System.Net;
+using System.Threading.Tasks;
using Android;
using Android.App;
using Android.Content;
using Android.Net;
using Android.OS;
+using Android.Runtime;
+using Android.Widget;
using CN.Jpush.Android.Api;
using HDL_ON;
using Java.Util;
@@ -29,6 +32,8 @@
public Application(IntPtr handle, Android.Runtime.JniHandleOwnership ownerShip) : base(handle, ownerShip) { }
public override void OnCreate()
{
+ //娉ㄥ唽鏈鐞嗗紓甯镐簨浠�
+ Com.Chteam.Agent.BuglyAgentHelper.Init(this.ApplicationContext, "cb89f20750");
if (Shared.Application.Activity != null)
{
reStartApp(this);
@@ -41,6 +46,9 @@
initAll();
}
+
+
+
/// <summary>
/// 鎵�鏈夊垵濮嬪寲鍏ㄩ儴鍦ㄨ繖涓柟娉曞疄鐜�
/// </summary>
@@ -51,8 +59,33 @@
Manifest.Permission.Camera, Manifest.Permission.ProcessOutgoingCalls, Manifest.Permission.GetAccounts};
//绂佹灞忓箷闀夸寒
BaseActivity.KeepScreenON = false;
- //闅愯棌杩嫓铏氭嫙鎸夐敭
+ //闅愯棌铏氭嫙鎸夐敭
BaseActivity.IsHideVirualButtons = true;
+ //瀹炵幇瀹夊崜杩斿洖鎸夐敭
+ BaseActivity.BackKeyAction = () =>
+ {
+ try
+ {
+ var result = MainPage.LoadEvent_BackAction();
+ switch (result)
+ {
+ case 0:
+ break;
+ case 1:
+ case 2:
+ BaseActivity.VerifyDateTime = DateTime.MaxValue;
+ break;
+ default:
+ BaseActivity.VerifyDateTime = DateTime.MaxValue;
+ break;
+ }
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine(ex.Message);
+ }
+ };
+
init();
BaseActivity.OnCreateActoin += (activity, application) =>
{
@@ -63,28 +96,37 @@
{
Language.CurrentLanguage = "Chinese";
}
-
+ else
+ {
+ Language.CurrentLanguage = "English";
+ }
+
//鑾峰彇鏋佸厜鎺ㄩ�両D
GetJPushRegistrationID(activity);
- BaseActivity.NetworkStateChanged += (int obj) =>
+ BaseActivity.NetworkStateChanged += (int internetStatus) =>
{
- if (!IsEnterBackground)
- {
- //BusSocket.Stop();
- new System.Threading.Thread(() =>
- {
- System.Threading.Thread.Sleep(1000);
- //BusSocket.Start();
- })
- { IsBackground = true }.Start();
- }
- else
- {
- Console.WriteLine("HHH 缃戠粶鍙樺寲浣嗗浜庡悗鍙�");
- }
- MainPage.InternetStatus = obj;
+ //if (!IsEnterBackground)
+ //{
+ // ////BusSocket.Stop();
+ // //new System.Threading.Thread(() =>
+ // //{
+ // // System.Threading.Thread.Sleep(1000);
+ // // //BusSocket.Start();
+ // //})
+ // //{ IsBackground = true }.Start();
+
+ //}
+ //else
+ //{
+ // Console.WriteLine("HHH 缃戠粶鍙樺寲浣嗗浜庡悗鍙�");
+ //}
+
+ //缃戠粶鍙樺寲澶勭悊
+ HDLCommon.Current.UpdateInternetStatus((int)internetStatus, MainPage.IsEnterBackground);
};
+ //寮�鍚畾浣嶆湇鍔�
+ Shared.Application.StartGPSLocationService();
};
BaseActivity.RefreshUIAction += (activity) =>
{
@@ -94,7 +136,8 @@
BaseActivity.OnResumeAction += (activity) =>
{
checkSomeInfo();
-
+
+
};
BaseActivity.OnDestroyAction += (activity) =>
{
@@ -104,27 +147,28 @@
};
+
HDLUtils.SetAuthoritiesName("com.hdl.onpro.fileProvider");
//Shared.Application.IsGpsEnable = true;
-
//鑾峰彇缁忕含搴�
Shared.Application.LocationAction = (lon, lat) =>
{
try
{
Shared.Application.LocationAction = null;
- Shared.Application.StopGPSLocationService();
new HDL_ON.DAL.Server.HttpServerRequest().GetCityInfo(lon.ToString(), lat.ToString());
+ //鍏抽棴瀹氫綅鏈嶅姟
+ Shared.Application.StopGPSLocationService();
}
- catch
+ catch (Exception ex)
{
-
+ Utlis.WriteLine("GetCityInfo catch" + ex.Message);
}
MainPage.Log($"缁忕含搴�:::{lon}:{lat}");
};
-
+
}
/// <summary>
@@ -133,16 +177,18 @@
/// <param name="activity"></param>
void GetJPushRegistrationID(BaseActivity activity)
{
+
try
{
+
//淇濆瓨鑾峰彇鐨勬瀬鍏夋湇鍔″櫒涓婄殑娉ㄥ唽ID鍒版湰鍦版枃浠�
var tokenID = JPushInterface.GetRegistrationID(activity);
Console.WriteLine("RegistrationID: " + tokenID);
- if (!string.IsNullOrEmpty(tokenID) && UserInfo.Current.PushDeviceToken != tokenID)
+ if (!string.IsNullOrEmpty(tokenID) && OnAppConfig.Instance.PushDeviceToken != tokenID)
{
- UserInfo.Current.PushDeviceToken = tokenID;
- UserInfo.Current.PhoneName = Android.OS.Build.Manufacturer;
- UserInfo.Current.SaveUserInfo();
+ OnAppConfig.Instance.PushDeviceToken = tokenID;
+ OnAppConfig.Instance.PhoneName = Android.OS.Build.Manufacturer;
+ OnAppConfig.Instance.SaveConfig();
}
int loadTokenCount = 0;
System.Threading.Tasks.Task.Run(() =>
@@ -159,11 +205,11 @@
}
}
Console.WriteLine("RegistrationID: " + tokenID);
- if (!string.IsNullOrEmpty(tokenID) && UserInfo.Current.PushDeviceToken != tokenID)
+ if (!string.IsNullOrEmpty(tokenID) && OnAppConfig.Instance.PushDeviceToken != tokenID)
{
- UserInfo.Current.PushDeviceToken = tokenID;
- UserInfo.Current.PhoneName = Android.OS.Build.Manufacturer;
- UserInfo.Current.SaveUserInfo();
+ OnAppConfig.Instance.PushDeviceToken = tokenID;
+ OnAppConfig.Instance.PhoneName = Android.OS.Build.Manufacturer;
+ OnAppConfig.Instance.SaveConfig();
}
});
@@ -303,30 +349,56 @@
int mCount;
+ ///// <summary>
+ ///// 鏄惁杩涘叆鍚庡彴
+ ///// </summary>
+ //public bool IsEnterBackground = false;
+
/// <summary>
- /// 鏄惁杩涘叆鍚庡彴
+ /// 杩涘叆鍚庡彴鐨勬椂闂�
/// </summary>
- public bool IsEnterBackground = false;
+ DateTime CloseTime = DateTime.Now;
/// <summary>
/// BusSocketStop
/// </summary>
void BusSocketStop()
{
- IsEnterBackground = true;
- //BusSocket.Stop();
- }
+ //IsEnterBackground = true;
+ CloseTime = DateTime.Now;
+ MainPage.IsEnterBackground = true;
+ //杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵��
+ HDL_ON.DAL.Mqtt.MqttClient.RemoteMqttIsConnecting = false;
+ HDL_ON.DriverLayer.UdpSocket._BusSocket.Stop();
+ }
/// <summary>
/// BusSocketStart
/// </summary>
void BusSocketStart()
{
- IsEnterBackground = false;
+ //IsEnterBackground = false;
- //BusSocket.Start();
+ 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();
+ HDL_ON.DriverLayer.Control.Ins.SearchLoaclGateway();
}
+
+ protected override void Dispose(bool disposing)
+ {
+ base.Dispose(disposing);
+ }
+
}
-}
\ No newline at end of file
+}
--
Gitblit v1.8.0