android 判斷app是否在前台還是在背景運作,直接看代碼,可直接使用。
[java] view
plaincopy
public static boolean isbackground(context context) {
activitymanager activitymanager = (activitymanager) context
.getsystemservice(context.activity_service);
list<runningappprocessinfo> appprocesses = activitymanager
.getrunningappprocesses();
for (runningappprocessinfo appprocess : appprocesses) {
if (appprocess.processname.equals(context.getpackagename())) {
/*
background=400 empty=500 foreground=100
gone=1000 perceptible=130 service=300 isible=200
*/
log.i(context.getpackagename(), "此appimportace ="
+ appprocess.importance
+ ",context.getclass().getname()="
+ context.getclass().getname());
if (appprocess.importance != runningappprocessinfo.importance_foreground) {
log.i(context.getpackagename(), "處于背景"
+ appprocess.processname);
return true;
} else {
log.i(context.getpackagename(), "處于前台"
return false;
}
}
}
return false;
}