Znalazłem kilka odniesień i skończył z następującego kodu:Jaki jest najbardziej niezawodny sposób określenia częstotliwości taktowania procesora w telefonach z systemem Android?
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();
Powyższy kod działa całkiem dobrze, ale nie cały czas. Dostałem kilka raportów, że raportuje wyższą niż częstotliwość ustawiona przez SetCPU przy maksymalnym ustawieniu w niektórych telefonach.
Czy istnieje bardziej niezawodny sposób na znalezienie prędkości zegara telefonów z systemem Android?
Czy jesteś pewien, że nie jest to 'SetCPU'„opowiadają kłamstwa”? –
Również to może być bycie naiwnym, ale po co używać procesu (nie, że to jest problem, tylko zastanawiam się z powodu wydajności)? dlaczego nie pobrać bezpośrednio strumienia danych z pliku? Zakładam, że dla exec cat potrzebne są te same uprawnienia, co do odczytu katalogu proc. –