/**
*判断当前应用程序处于前台还是后台
*/
public synchronized static boolean isAppInFront(final Context context) {
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = am.getRunningTasks(1);
if(am != null)
{
if (!tasks.isEmpty()) {
ComponentName topActivity = tasks.get(0).topActivity;
if (topActivity.getPackageName().equals("xxx.xxx.xxx")) {
return true;
}
}
}
return false;
}
/**
*判断当前应用程序是否启动
*/
public synchronized static boolean isApplicationRunning(final Context context,String apkname) {
if(TextUtils.isEmpty(apkname))
{
return false;
}
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = am.getRunningTasks(100);
if (tasks!= null && !tasks.isEmpty()) {
for (RunningTaskInfo info : tasks)
{
if (info.topActivity.getPackageName().equals(apkname) || info.baseActivity.getPackageName().equals(apkname))
{
return true;
}
}
}
return false;
}
判断当前应用是否启动/是否在前台
最新推荐文章于 2024-07-30 13:49:36 发布
本文提供了两个方法:一是检查应用是否在前台运行;二是确认应用是否已启动。通过使用Android的ActivityManager来获取正在运行的任务列表,并对比包名实现功能。
749

被折叠的 条评论
为什么被折叠?



