记录一个Android应用开发过程中用到的“判断一个Activity是否在运行”的方法:
/**
* 判断一个Activity是否正在运行
* @param pkg
* @param cls
* @param context
* @return
*/
public static boolean isClsRunning(String pkg, String cls, Context context) {
ActivityManager am =(ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> tasks = am.getRunningTasks(1);
ActivityManager.RunningTaskInfo task = tasks.get(0);
if (task != null) {
return TextUtils.equals(task.topActivity.getPackageName(), pkg) && TextUtils.equals(task.topActivity.getClassName(), cls);
}
return false;
}
其中,pkg为应用包名,cls为类名eg:com.example.MainActivity.