最近做一个项目,需要知道当前的android 程序是否处于运行当中,我想了很久以及在google上找了一些参考。只要判断我的activity是否处于活动中就可以了,下面给出简单的实现
public static boolean checkIsEageleRunning(Context appCtx) { try { ActivityManager activityManager = (ActivityManager) appCtx.getSystemService(Context.ACTIVITY_SERVICE); List<ActivityManager.RunningAppProcessInfo> list = activityManager.getRunningAppProcesses(); ListIterator<ActivityManager.RunningAppProcessInfo> li = list.listIterator(); while (li.hasNext()) { ActivityManager.RunningAppProcessInfo in = li.next(); if (in.processName.equals(appCtx.getPackageName())) { if (in.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) return true; } } } catch (Exception e) { } return false; }
上面的代码就是判断activity是否跟我的应用的activity相同。