wxr
2023-06-06 592974441a4df95fffd9167c90192da1a390b1c2
HDL-ON_Android/Application.cs
@@ -5,6 +5,7 @@
using Android.App;
using Android.Content;
using Android.Net;
using Android.Net.Wifi;
using Android.OS;
using Android.Runtime;
using Android.Widget;
@@ -24,6 +25,8 @@
    [Android.App.Application(Theme = "@style/MyTheme")]
    public class Application : Android.App.Application, Android.App.Application.IActivityLifecycleCallbacks
    {
        //处理安卓接收不到udp命令问题
        WifiManager.MulticastLock multicast;
        static void reStartApp(Android.App.Application application)
        {
@@ -36,6 +39,7 @@
        public Application(IntPtr handle, Android.Runtime.JniHandleOwnership ownerShip) : base(handle, ownerShip) { }
        public override void OnCreate()
        {
            if (Shared.Application.Activity != null)
            {
                //reStartApp(this);
@@ -43,6 +47,25 @@
            }
            base.OnCreate();
            WifiManager manager = (WifiManager)this.GetSystemService(Context.WifiService);
            multicast = manager.CreateMulticastLock("UDPwifi");
            Language.CurrentLanguage = "Chinese";
            Locale locale1 = Locale.Default;
            var localeList = Resources.Configuration.Locale;
            Console.WriteLine("当前语言:" + localeList.Language);
            if (localeList.Language == "zh")
            {
                Language.CurrentLanguage = "Chinese";
            }
            else
            {
                Language.CurrentLanguage = "English";
            }
            RegisterActivityLifecycleCallbacks(this);
        }
@@ -83,9 +106,12 @@
            {
                Console.WriteLine("HHH OnActivityStarted:foreground");
                BusSocketStart();
                multicast.Acquire();
                //后台回到前台
                new HDL_ON.UI.AppUnlockPage().LoadPage();
            }
        }
        public void OnActivityStopped(Activity activity)
@@ -96,6 +122,7 @@
            {
                Console.WriteLine("HHH OnActivityStopped: background");
                BusSocketStop();
                multicast.Release();
                //进入后台
                UserInfo.Current.unlockTime = DateTime.Now;