wxr
2024-09-27 acc8caee31c4be90bd38d1af18136b0e84f6fe94
HDL-ON_Android/Other/HDLONUtils.cs
@@ -1,5 +1,7 @@
using System;
using Android.App;
using Android.Content;
using Android.OS;
using Java.IO;
namespace HDL_ON_Android
@@ -32,12 +34,42 @@
            }
        }
        //public static void StartSplashActivity()
        //{
        //    Intent intent = new Intent(Shared.Application.Activity, typeof(SplashActivity));
        //    Shared.Application.Activity.StartActivity(intent);
        //    Shared.Application.Activity.Finish();
        //}
        [Obsolete]
        public static bool IsAppInForeground(Context context)
        {
            ActivityManager activityManager = (ActivityManager)context.GetSystemService(Context.ActivityService);
            if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
            {
                var appProcesses = activityManager.RunningAppProcesses;
                if (appProcesses != null)
                {
                    string packageName = context.PackageName;
                    foreach (var appProcess in appProcesses)
                    {
                        if (appProcess.Importance == Importance.Foreground && appProcess.ProcessName.Equals(packageName))
                        {
                            return true; // 应用在前台
                        }
                    }
                }
            }
            else
            {
                var tasks = activityManager.GetRunningTasks(1);
                if (tasks != null && tasks.Count > 0)
                {
                    var topActivity = tasks[0].TopActivity;
                    if (topActivity.PackageName.Equals(context.PackageName))
                    {
                        return true; // 应用在前台
                    }
                }
            }
            return false; // 应用不在前台
        }
    }
}