判断应用是否在前台
一般情况下,我们判断一个应用是否在前台都是通过 ActivityManager 接口去判断的。
下面我们把它封装成一个函数,保证耦合性最低,方便去使用
//只需要获取当前的上下文,即可判断应用是否在前台
public static boolean isAppRunning(Context context) {
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> list = activityManager.getRunningTasks(1);
if(list.size() <= 0) {
return false;
}
Slog.i("log","classname is "+list.get(0).topActivity.getClassName());
if( list.get(0).topActivity.getClassName().equals("需要比较的activity的包名") ) {
return true;
} else {
return false;
}
}