Android系统级开发清理功能的一些记录和发现
- 客户需求做一键清理所有后台进程的功能,在查阅网上相关博客以及自己研究以后找到以下几种方法:
killBackgroundProcesses()
这种方式比较常规,packageName是需要停止的应用的包名,但这种方式实测之后进程有很大概率重启。(不能完全杀死进程)
ActivityManager.killBackgroundProcesses(packageName);//packageName为所需要停止的包名
此方法需要权限:
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
forceStopPackage()
这种方式在系统级应用中才有作用,可以完全杀死任何进程,但是无法移除其在近期任务列表(RecentsActivity)中的显示,因此用户打开近期任务列表,还是能看到该应用的入口,点击后可以重新进入应用,影响用户体验。
Method method = null;
method = Class.forName<