From 0b8ccdf3be572f023721352caba559cd53ddd43d Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期五, 11 十二月 2020 14:35:42 +0800
Subject: [PATCH] 1.更新提示文字
---
HDL-ON_Android/Application.cs | 215 ++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 202 insertions(+), 13 deletions(-)
diff --git a/HDL-ON_Android/Application.cs b/HDL-ON_Android/Application.cs
index 08910d8..798ab14 100644
--- a/HDL-ON_Android/Application.cs
+++ b/HDL-ON_Android/Application.cs
@@ -1,8 +1,11 @@
锘縰sing System;
+using System.Net;
using Android;
+using Android.App;
using Android.Content;
using Android.Net;
using Android.OS;
+using CN.Jpush.Android.Api;
using HDL_ON;
using Java.Util;
using Shared;
@@ -13,7 +16,7 @@
/// 璁惧畾涓洪粯璁ゅ惎鍔ㄧ殑Application
/// </summary>
[Android.App.Application]
- public class Application : Android.App.Application
+ public class Application : Android.App.Application, Android.App.Application.IActivityLifecycleCallbacks
{
static void reStartApp(Android.App.Application application)
{
@@ -33,52 +36,154 @@
}
base.OnCreate();
+ RegisterActivityLifecycleCallbacks(this);
initAll();
-
+
}
/// <summary>
/// 鎵�鏈夊垵濮嬪寲鍏ㄩ儴鍦ㄨ繖涓柟娉曞疄鐜�
/// </summary>
void initAll()
{
-
+
string[] permissions = new string[] { Manifest.Permission.WriteExternalStorage, Manifest.Permission.RecordAudio,
Manifest.Permission.Camera, Manifest.Permission.ProcessOutgoingCalls, Manifest.Permission.GetAccounts};
-
+ //绂佹灞忓箷闀夸寒
+ BaseActivity.KeepScreenON = false;
+ //闅愯棌杩嫓铏氭嫙鎸夐敭
BaseActivity.IsHideVirualButtons = true;
init();
- BaseActivity.OnCreateActoin += (activity, application) => {
- Language.CurrentLanguage = "Chinese";
+ BaseActivity.OnCreateActoin += (activity, application) =>
+ {
+ Language.CurrentLanguage = "Chinese";
Locale locale1 = Locale.Default;
var localeList = Resources.Configuration.Locale;
if (localeList.Language == "zh")
{
Language.CurrentLanguage = "Chinese";
}
+
+ //鑾峰彇鏋佸厜鎺ㄩ�両D
+ GetJPushRegistrationID(activity);
- BaseActivity.NetworkStateChanged += (int obj) => {
+ BaseActivity.NetworkStateChanged += (int obj) =>
+ {
+ if (!IsEnterBackground)
+ {
+ //BusSocket.Stop();
+ new System.Threading.Thread(() =>
+ {
+ System.Threading.Thread.Sleep(1000);
+ //BusSocket.Start();
+ })
+ { IsBackground = true }.Start();
+ }
+ else
+ {
+ Console.WriteLine("HHH 缃戠粶鍙樺寲浣嗗浜庡悗鍙�");
+ }
+
};
-
};
- BaseActivity.RefreshUIAction += (activity) => {
+ BaseActivity.RefreshUIAction += (activity) =>
+ {
MainPage.Show();
checkSomeInfo();
};
- BaseActivity.OnResumeAction += (activity) => {
+ BaseActivity.OnResumeAction += (activity) =>
+ {
checkSomeInfo();
+ new HDL_ON.UI.AppUnlockPage().LoadPage();
};
- BaseActivity.OnDestroyAction += (activity) => {
+ BaseActivity.OnDestroyAction += (activity) =>
+ {
Console.WriteLine("OnDestroyAction");
- BusSocket.Stop();
+ //BusSocket.Stop();
+ OnAppConfig.Instance.unlockTime = DateTime.Now;
};
+
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());
+ }
+ catch
+ {
+
+ }
+ MainPage.Log($"缁忕含搴�:::{lon}:{lat}");
+ };
+
+
}
+
+ /// <summary>
+ ///
+ /// </summary>
+ /// <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)
+ {
+ UserInfo.Current.PushDeviceToken = tokenID;
+ UserInfo.Current.PhoneName = Android.OS.Build.Manufacturer;
+ UserInfo.Current.SaveUserInfo();
+ }
+ int loadTokenCount = 0;
+ System.Threading.Tasks.Task.Run(() =>
+ {
+ while (string.IsNullOrEmpty(tokenID))
+ {
+ System.Threading.Thread.Sleep(1000);
+ tokenID = JPushInterface.GetRegistrationID(activity);
+ Console.WriteLine("Sleep.tokenID + " + JPushInterface.GetRegistrationID(activity));
+ loadTokenCount++;
+ if (loadTokenCount > 30)
+ {
+ break;
+ }
+ }
+ Console.WriteLine("RegistrationID: " + tokenID);
+ if (!string.IsNullOrEmpty(tokenID) && UserInfo.Current.PushDeviceToken != tokenID)
+ {
+ UserInfo.Current.PushDeviceToken = tokenID;
+ UserInfo.Current.PhoneName = Android.OS.Build.Manufacturer;
+ UserInfo.Current.SaveUserInfo();
+ }
+ });
+
+ }
+ catch
+ {
+
+ }
+ }
+
public static bool IsShowTip = true;
void init()
{
//鎵嬫満鍚嶇О Android.OS.Build.Manufacturer;
+ //OnAppConfig.Instance.PhoneName = Android.OS.Build.Manufacturer;
+#if DEBUG
+ CN.Jpush.Android.Api.JPushInterface.SetDebugMode(true);
+#endif
+ CN.Jpush.Android.Api.JPushInterface.Init(this);
+
}
void checkSomeInfo()
{
@@ -135,5 +240,89 @@
}
return false;
}
+
+ public void OnActivityCreated(Activity activity, Bundle savedInstanceState)
+ {
+
+ }
+
+ public void OnActivityDestroyed(Activity activity)
+ {
+ //throw new NotImplementedException ();
+ }
+
+ public void OnActivityPaused(Activity activity)
+ {
+ //throw new NotImplementedException ();
+ }
+
+ public void OnActivityResumed(Activity activity)
+ {
+ //throw new NotImplementedException ();
+ }
+
+ public void OnActivitySaveInstanceState(Activity activity, Bundle outState)
+ {
+ //throw new NotImplementedException ();
+ }
+
+ public void OnActivityStarted(Activity activity)
+ {
+ //throw new NotImplementedException ();
+
+ mCount++;
+ if (mCount == 1)
+ {
+ Console.WriteLine("HHH OnActivityStarted锛歠oreground");
+ BusSocketStart();
+ }
+ }
+
+ public void OnActivityStopped(Activity activity)
+ {
+
+ mCount--;
+ if (mCount == 0)
+ {
+ Console.WriteLine("HHH OnActivityStopped锛� background");
+ BusSocketStop();
+ }
+ }
+
+
+ public override void OnTerminate()
+ {
+ base.OnTerminate();
+ UnregisterActivityLifecycleCallbacks(this);
+ }
+
+ int mCount;
+
+ /// <summary>
+ /// 鏄惁杩涘叆鍚庡彴
+ /// </summary>
+ public bool IsEnterBackground = false;
+
+ /// <summary>
+ /// BusSocketStop
+ /// </summary>
+ void BusSocketStop()
+ {
+ IsEnterBackground = true;
+ //BusSocket.Stop();
+ OnAppConfig.Instance.unlockTime = DateTime.Now;
+ }
+
+
+ /// <summary>
+ /// BusSocketStart
+ /// </summary>
+ void BusSocketStart()
+ {
+ IsEnterBackground = false;
+
+ //BusSocket.Start();
+ }
}
-}
+
+}
\ No newline at end of file
--
Gitblit v1.8.0