无法使用activityManager.killBackgroundProcesses杀死SystemUI

时间:2015-06-04 16:56:28

标签: android

这里的第一个问题,我很熟悉Android开发,所以请原谅。 对于我的应用程序的一部分,我想添加一个可以重新启动systemui的按钮,我通过以下代码执行此操作。

        @Override
        public void onClick(View v) {
            ActivityManager activityManager = (ActivityManager)getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE);
            activityManager.killBackgroundProcesses("com.android.systemui");
        }

我已使用以下代码给予应用程序SU权限

public Process p;

{
    try {
        p = Runtime.getRuntime().exec("su");
    } catch (IOException e) {
        e.printStackTrace();
    }
}

非常感谢提前。

2 个答案:

答案 0 :(得分:0)

您应该拥有KILL_BACKGROUND_PROCESSES权限才能调用此方法。

su在这里没有发挥作用,因为你正在使用android的框架进行此操作。如果你使用busybox来杀死进程,那么你需要su。

通常,杀死SystemUI不是一个好主意。

答案 1 :(得分:0)

无法使用Android框架的功能杀死SystemUI。您应该使用Runtime.getRuntime()。exec(“ su -c killall com.android.systemui”);如果您想用root杀死SystemUI。请注意,在系统UI即将重新启动之前,屏幕将变黑。