public class NotificationDemoActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ActivityManager am = (ActivityManager) this.getSystemService(this.ACTIVITY_SERVICE);
// 获得手机进程列表
List<RunningAppProcessInfo> infos = am.getRunningAppProcesses();
for (RunningAppProcessInfo runningAppProcessInfo : infos) {
System.out.println(runningAppProcessInfo.processName);
// 去除包含Android包名跟本包名的进程
if(runningAppProcessInfo.processName.indexOf("android") == -1 && runningAppProcessInfo.processName.indexOf(this.getPackageName()) == -1) {
// 关闭进程
am.killBackgroundProcesses(runningAppProcessInfo.processName);
}
}
}
}
权限增加:
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"></uses-permission>
关闭进程时要防止关闭了系统进程及不该禁止的进程
关闭Android应用进程的实用技巧
本文介绍如何在Android应用中安全地关闭后台进程,详细解释了如何使用系统的ActivityManager来获取并处理进程列表,同时强调了权限需求,并提供了一个实际的示例代码。文章深入探讨了在关闭进程时避免误杀系统进程的方法。
2654

被折叠的 条评论
为什么被折叠?



