0

我正在创建一个应该设置 CPU 缩放调节器的简单 Android 应用程序。

为了实现这一点,我做了这个功能:

public static void setCurrentGovernor(String governor){
    Process process;
    try{
        String cpufreq_path= "/sys/devices/system/cpu/cpu0/cpufreq";
        String cmd = "echo `"+governor+"` > "+cpufreq_path+"/scaling_governor ";
        process = Runtime.getRuntime().exec(new String[] {"su","-c",cmd});
    } catch(IOException e){
        e.printStackTrace();
    }
}

我的问题是这个功能不起作用,加上超级用户总是提示我权限,有没有办法只在第一次应用启动时给它root权限?

这个函数在微调器的 onitemselectedlistener 中调用,在这个函数之后还有另一个从 cpufreq 文件中获取数据来更新视图,但是如果我这样做了,cat scaling_governor我会得到旧的调控器,所以它不是一个错误的更新函数。

4

1 回答 1

1

这个更可靠的代码解决了我的问题: 链接

于 2013-03-16T12:27:38.343 回答