Android 判断app的状态 重启app
- 判断app的状态:
public int isBackground() {
ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> appProcesses = activityManager
.getRunningAppProcesses();
for (ActivityManager.RunningAppProcessInfo appProcess : appProcesses) {
if (appProcess.processName.equals(getPackageName())) {
if (appProcess.importance != ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
return BACKGROUND;
} else {
return SHOW;
}
}
}
return KILL;
}
- 重启app:
private void startApp() {
Intent launchIntent = this.getPackageManager().
getLaunchIntentForPackage("包名");
launchIntent.setFlags(
Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
launchIntent.putExtra(RECEVIER_INTENT_MESSAGE, messge);
startActivity(launchIntent);
}