/** * 判断某个界面是否在前台 * * @param context * @param className 某个界面名称 */ public static boolean isForeground(Context context, String className) { if (context == null || TextUtils.isEmpty(className)) { return false; } ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningTaskInfo> list = am.getRunningTasks(1); if (list != null && list.size() > 0) { ComponentName cpn = list.get(0).topActivity; if (className.equals(cpn.getClassName())) { return true; } } return false; }
/** * 判断当前应用的是否为前台task * * @param context * @return * @author dujinyang */ public static boolean isAppForgroud(Context context) { if (context != null) { String packName = context.getPackageName(); List<ActivityManager.RunningTaskInfo> rTasks = getRunningTask(context, 1); if (rTasks == null) return false; ActivityManager.RunningTaskInfo task = rTasks.get(0); return packName.equalsIgnoreCase(task.topActivity.getPackageName()); } return false; }