public void allKillRunningApps() {
ActivityManager activity_manager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> app_list = activity_manager.getRunningAppProcesses();
for(int i=0; i<app_list.size(); i++) {
if(! PkgName[3].equals(app_list.get(i).processName)&&app_list.get(i).pid != android.os.Process.myPid()) {
activity_manager.killBackgroundProcesses(app_list.get(i).processName);
android.os.Process.sendSignal(app_list.get(i).pid, android.os.Process.SIGNAL_QUIT);
android.os.Process.killProcess(app_list.get(i).pid);
}
}
System.gc();
}
Intent로 외부 앱을 호출하여 시간이 되면 다시 메인액티비티를 Clear on top으로 맨위로 올리고 killbackgroundprocess로 프로세스를 종료시켜도 메인액티비티실행이 끝나고 Back버튼 눌러서 나가보면 호출한 앱들이 그대로 대기하고있더군요. 이거 끄는 방법 없을까요? 프로세스에 킬명령을 보낸다든가, 킬프로세스로 지정해서 킬 해봤지만 소용이 없습니다.
마켓에서 받은 앱이라 패키지명은 아는데 프로세스를 끄는게 안되네요.
저번에 디스패치에 실패하고 적어도 종료라도 시키려고하는데 방법이 없을까요?
기반 OS는 4.4.4 킷캣입니다.
메인 액티비티를 재호출 할 때 Clear task도 실험해봤습니다만, 이때는 윈하는 대로 작동하지 않았습니다.