使用forceStopPackage方法,该方法位于ActivityManager中,但作为系统内部使用,并未对sdk开放。
做一个应用,需要强制关闭进程。
可以使用ActivityManager的killBackgroundProcesses方法,需要权限android.permission.KILL_BACKGROUND_PROCESSES。但使用此方法杀死进程后,进程会重启。源码中解释如下:
Have the system immediately kill all background processes associated with the given package. This is the same as the kernel killing those processes to reclaim memory; the system will take care of restarting these processes in the future as needed.
为了强制关闭进程,希望使用ActivityManager的另外一个方法,forceStopPackage。源码中解释如下:
Have the system perform a force stop of everything associated with the given application package. All processes that share its uid will be killed, all services it has running stopped, all activities removed, etc. In addition, a {@link Intent#ACTION_PACKAGE_RESTARTED} broadcast will be sent, so that any of its registered alarms can be stopped, notifications removed, etc.
使用这个方法有两点需要注意:此方法是@hide的方法.
详细可以参见高人写的一篇文章,说的很清楚:
http://blog.csdn.net/huxueyan521/article/details/8921976