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
@@ -31,5 +33,43 @@
                System.Console.WriteLine("发送广播刷新图库 catch");
            }
        }
        [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; // 应用不在前台
        }
    }
}