Skip to content

判断一个应用是否在前台代码库有问题? #16

Description

@XiongKe94
public static boolean isAppForegroundRunning(final Context context) {
	ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
    if (activityManager == null) return false;
    List<ActivityManager.RunningTaskInfo> tasks = activityManager.getRunningTasks(1);
    if (!tasks.isEmpty()) {
        ComponentName topActivity = tasks.get(0).topActivity;
        if (topActivity.getPackageName().equals(context.getPackageName())) {
            return true;
        }
    }
    return false;
}
  • 手机系统:Android 4.3
  • 型号:Galaxy Nexus
  • 你的代码:AndroidProcesses.getRunningForegroundApps(context);
    如果一个应用退出到后台,但是正在下载文件的话,AndroidProcesses.getRunningForegroundApps(context);中的foreground==true,而以前使用的代码返回值为false,
    就是说的你的代码判断不准确

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions