【发布时间】:2011-03-02 13:16:23
【问题描述】:
是否有任何 Java API 可以做到这一点?我如何阅读这些信息。
【问题讨论】:
是否有任何 Java API 可以做到这一点?我如何阅读这些信息。
【问题讨论】:
要在Android上获得频率,只需阅读/sys目录中的这些特殊文件:
#cat "/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq"
#cat "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq"
#cat "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq"
您将拥有允许的当前、最小和最大频率。
【讨论】:
/sys/devices/system/cpu/cpufreq/下的子目录policyX,那是什么?
不是 MHz,但至少是一些东西。 bogoMIPS 值可能对你有用。
private String ReadCPUinfo()
{
ProcessBuilder cmd;
String result="";
try{
String[] args = {"/system/bin/cat", "/proc/cpuinfo"};
cmd = new ProcessBuilder(args);
Process process = cmd.start();
InputStream in = process.getInputStream();
byte[] re = new byte[1024];
while(in.read(re) != -1){
System.out.println(new String(re));
result = result + new String(re);
}
in.close();
} catch(IOException ex){
ex.printStackTrace();
}
return result;
}
【讨论】:
如果您对系统在什么状态下花费了多长时间感兴趣,请查看文件
/sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
我不确定是否需要 root 访问权限。
【讨论】:
cpuinfo_cur_freq。