web-dev-qa-db-ja.com

AndroidデバイスでCPU周波数を読み取る方法

JavaそのためのAPIはありますか?どうすればこの情報を読むことができますか?.

25
michael

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"

現在、最小、最大の周波数が許可されます。

44
Ellis

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;
 }
7
zed_0xff

システムがどのような状態で過ごした時間に興味がある場合は、ファイルを確認してください

/sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state

そのためにrootアクセスが必要かどうかはわかりません。

4
Michael Kopp