Есть ли для этого Java API? Как я могу прочитать эту информацию.
Как читать частоту процессора на устройстве Android
Ответ 1
Чтобы иметь частоту на 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"
У вас будет ток, мин и макс. Разрешена частота.
Ответ 2
не МГц, но, по крайней мере, что-то. 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;
}
Ответ 3
Если вас интересует, сколько времени ваша система провела в каком состоянии, проверьте файл
/sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
Я не уверен, нужен ли для этого корневой доступ.