如何在Android 6.0和最新版本中杀死后台进程?

时间:2018-04-18 13:19:43

标签: android

我使用该代码片段来清理RAM内存:

public void onClear(){
    ActivityManager am = (ActivityManager) getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE);
    for (ActivityManager.RunningAppProcessInfo pid : am.getRunningAppProcesses()) {
        am.killBackgroundProcesses(pid.processName);
        android.os.Process.killProcess(pid.uid);
    }   
}

它在Android 5.1手机上运行正常,但在7.1固件的同一部手机上无法正常工作,在其他安卓6.0手机上也无效。

我在AndrodManifest.xml中有一个<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />。在build.gradle中,targetSdkVersion = 22。

1 个答案:

答案 0 :(得分:0)

从Android M开始,系统不会自动授予危险权限。 android.permission.KILL_BACKGROUND_PROCESSES属于危险许可类别。您必须在运行时请求权限。可以找到实施教程here