안드로이드 타블렛의 가상 파일 /proc/cpuinfo
을 구문 분석하여 프로세서의 코어 및 클럭 속도 정보를 얻으려면 어떻게해야합니까? 위 파일에 제공된 모든 정보가 필요하지 않습니다. 이 두 비트 만. 누군가 도와 드릴 수 있습니까?"/ proc/cpuinfo"파일에서 안드로이드 장치의 특정 정보를 얻는 방법은 무엇입니까?
2
A
답변
4
앱 내부에이 정보를 원하거나 사용자 자신의 용도로만 사용할지 여부는 분명하지 않습니다.
당신은 ADB와에이 정보를 얻을 수 있습니다 : 앱이 정보를 사용하려면
adb shell cat /proc/cpuinfo
는, 예를 들어,
Map<String,String>
을 반환하는 간단한 함수를 작성,public static Map<String, String> getCpuInfoMap() { Map<String, String> map = new HashMap<String, String>(); try { Scanner s = new Scanner(new File("/proc/cpuinfo")); while (s.hasNextLine()) { String[] vals = s.nextLine().split(": "); if (vals.length > 1) map.put(vals[0].trim(), vals[1].trim()); } } catch (Exception e) {Log.e("getCpuInfoMap",Log.getStackTraceString(e));} return map; }
참고로 여러 개의 cpus 정보를 덮어 쓰지는 않습니다. 대부분의 값은 어쨌든 비슷합니다. 또는 수정을 클릭하여 CpuInfoMap 목록을 만듭니다.
는 시도
Log.d("getCpuInfoMap test", getCpuInfoMap().toString());
나는 희망
0
는 너무 늦게 답변을하지만,이는 내가 특정 CPU 코어에 대한 현재의 주파수 얼마나 : 여기에서
public class MainActivity extends Activity{
private static final int INSERTION_POINT = 27;
private static String getCurFrequencyFilePath(int whichCpuCore){
StringBuilder filePath = new StringBuilder("/sys/devices/system/cpu/cpu/cpufreq/scaling_cur_freq");
filePath.insert(INSERTION_POINT, whichCpuCore);
return filePath.toString();
}
public static int getCurrentFrequency(int whichCpuCore){
int curFrequency = -1;
String cpuCoreCurFreqFilePath = getCurFrequencyFilePath(whichCpuCore);
if(new File(cpuCoreCurFreqFilePath).exists()){
try {
BufferedReader br = new BufferedReader(new FileReader(new File(cpuCoreCurFreqFilePath)));
String aLine;
while ((aLine = br.readLine()) != null) {
try{
curFrequency = Integer.parseInt(aLine);
}
catch(NumberFormatException e){
Log.e(getPackageName(), e.toString());
}
}
if (br != null) {
br.close();
}
}
catch (IOException e) {
Log.e(getPackageName(), e.toString());
}
}
return curFrequency;
}
}
을 그것의 케이크 조각, 당신은 단순히 방법을 부른다 : - D
int core1CurrentFreq = getCurrentFrequency(1, this);
는 때때로 코어는이 경우 파일 경로가 존재하지 않으며 -1
참고을 반환됩니다, 오프라인. 반환 값은
MHz의 값이
GHz의 값이 core1CurrentFreq/1E6입니다 core1CurrentFreq/1e3입니다 KHz의에
getCurFrequencyFilePath() 메소드의 일부 explainations가 모든 것을 명확하지 때문이다.
현재 주파수는 일반적으로 파일에 저장되어 scaling_cur_freq
파일 경로는 다음
"/sys/devices/system/cpu/cpu(XX)/cpufreq/scaling_cur_freq"
(XX) CPU 코어 번호 등 대입
:
"/sys/devices/system/cpu/cpu2/cpufreq/scaling_cur_freq"
INSERTION_POINT 변수는 (XX)의 인덱스 일 뿐이며, 우리는 CPU 코어에 해당하는 숫자를 놓기를 원합니다.
cpufreq 폴더에있는 다른 파일을 살펴 보시고, 최대 및 최소 주파수, availables 주파수 목록 등과 같은 기타 정보를 얻을 수 있습니다.
클릭이 Link 및
관련 문제
- 1. 장치의 android_id를 얻는 방법은 무엇입니까?
- 2. 서버의 DB에서 특정 장치의 세부 정보를 삭제하는 방법은 무엇입니까?
- 3. 장치 네트워크 정보를 얻는 방법은 무엇입니까? (안드로이드)
- 4. JSOUP의 요소에서 특정 정보를 얻는 방법은 무엇입니까?
- 5. 장치의 화면 크기를 얻는 방법은 무엇입니까?
- 6. 연결된 USB 장치의 위치 정보를 얻는 중
- 7. 안드로이드 API 레벨 17 장치의 메뉴 옵션을 얻는 방법은 무엇입니까?
- 8. 안드로이드 장치의 정확한 dpi 값을 얻는 방법은 무엇입니까?
- 9. 안드로이드 4.3에서 블루투스 장치의 RSSI를 실시간으로 얻는 방법은 무엇입니까?
- 10. 라우터에 연결된 장치 정보를 얻는 방법은 무엇입니까?
- 11. Mac에서 USB 장치의 UUID를 얻는 방법은 무엇입니까?
- 12. WM_DEVICECHANGE에서 장치 정보를 얻는 방법은 무엇입니까?
- 13. Java, Android의 Google 캘린더에서 일정에 대한 정보를 얻는 방법은 무엇입니까?
- 14. OpenCL 장치의 코어 수를 얻는 방법은 무엇입니까?
- 15. 미디 장치의 현재 상태를 얻는 방법은 무엇입니까?
- 16. Cocos2d-x에서 장치의 종횡비를 얻는 방법은 무엇입니까?
- 17. 장치의 총 RAM 크기를 얻는 방법은 무엇입니까?
- 18. 장치의 실제 크기를 얻는 방법은 무엇입니까?
- 19. 프로세스 정보를 얻는 방법은 무엇입니까?
- 20. 안드로이드 장치의 터치 스크린을 비활성화하는 방법은 무엇입니까?
- 21. 안드로이드 용 장치의 디스플레이를 확대하는 방법은 무엇입니까?
- 22. 안드로이드 용 mysql 데이터베이스의 세부 정보를 얻는 방법은 무엇입니까?
- 23. YouTube 콘텐츠의 파일 정보를 얻는 방법은 무엇입니까?
- 24. 특정 이벤트를 클릭하면 Android에서 캘린더 일정 정보를 얻는 방법은 무엇입니까?
- 25. Windows에서 특정 파일 세부 정보를 얻는 방법은 무엇입니까?
- 26. 특정 URL에있는 오디오 파일의 ID3Tags 정보를 얻는 방법은 무엇입니까?
- 27. 사용자가 특정 게시물에 대한 세부 정보를 얻는 방법은 무엇입니까?
- 28. JavaFX - 구성 요소의 특정 노드에서 정보를 얻는 방법은 무엇입니까?
- 29. github graphQL을 사용하여 특정 사용자에 대한 정보를 얻는 방법은 무엇입니까?
- 30. C# WebDriver에서 브라우저 정보를 얻는 방법은 무엇입니까?
(3) 나는 내 자신의 응용 프로그램에서이 두 정보를 원하는 제목으로 아래로 스크롤합니다. 그러나 그들 모두는 아닙니다, 미안 해요! 내가 왜 그 두 가지 가치에 대해서만 썼는가. –
그냥 두 값을지도에서 가져와 ... 예 :'getCpuInfoMap(). get ("cpu MHz")' – ashoke
고맙지 만 거기에 "프로세서의 코어 및 ClockSpeed"라는 값을 찾을 수 없습니다. –