2011-02-09 81 views
7

我發現了一些參考,最終用下面的代碼:確定Android手機CPU時鐘頻率的最可靠方法是什麼?

String[] args = { "/system/bin/cat", "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq" }; 

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(); 

上面的代碼工作得很好,但不是所有的時間。我收到了一些報告,指出它在某些電話上的報告高於SetCPU在最大設置下設置的頻率。

有沒有更可靠的方法來找到Android手機的時鐘速度?

+4

你確定它是不是'SetCPU`那就是「說謊」? – 2011-02-09 00:58:48

+2

此外,這可能是我天真,但爲什麼使用一個過程(不是它是問題,只是想知道性能的原因)?爲什麼不直接從文件中獲取輸入流?我認爲執行cat需要相同的權限,因爲需要讀取proc目錄。 – 2011-02-17 07:42:41

回答

1

如果你想你可以讀取當前頻率:

/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 
相關問題