2011-08-16 4 views
11

프로그래밍 방식으로 현재 Android 기기에 관한 정보를 추출하는 API가 있습니까? 예 : '모델', 'OS'등의 속성Android 기기 정보

이것은 iOS의 클래스 및 인스턴스 속성과 유사합니다.

+0

Build.SERIAL이 시도 할 수 있습니다. – kumar

+0

[OS 또는 장치 유형과 같은 시스템 정보를 찾는 방법] (http://stackoverflow.com/questions/3213205/how-to-detect-system-information-like-os-or-device-type) –

답변

21

클래스 android.os.Build을 사용하면 대부분의 장치 정보를 가져올 수 있습니다.

String myDeviceModel = android.os.Build.MODEL; 
+0

이를 사용하여 예를 들어 운영체제 버전 (예 : "Android 2.2")을 추출 할 수 있습니까? – SK9

+0

그게 당신이 사용할 수 있습니다 : http://developer.android.com/reference/android/os/Build.VERSION.html – roundhill

23

이 시도 : 예를 들어

단지 :

String _OSVERSION = System.getProperty("os.version"); 
String _RELEASE = android.os.Build.VERSION.RELEASE; 
String _DEVICE = android.os.Build.DEVICE; 
String _MODEL = android.os.Build.MODEL; 
String _PRODUCT = android.os.Build.PRODUCT; 
String _BRAND = android.os.Build.BRAND; 
String _DISPLAY = android.os.Build.DISPLAY; 
String _CPU_ABI = android.os.Build.CPU_ABI; 
String _CPU_ABI2 = android.os.Build.CPU_ABI2; 
String _UNKNOWN = android.os.Build.UNKNOWN; 
String _HARDWARE = android.os.Build.HARDWARE; 
String _ID = android.os.Build.ID; 
String _MANUFACTURER = android.os.Build.MANUFACTURER; 
String _SERIAL = android.os.Build.SERIAL; 
String _USER = android.os.Build.USER; 
String _HOST = android.os.Build.HOST; 

더 많은 정보 http://developer.android.com/reference/android/os/Build.html

+1

System.getProperty ("os.version")는 리눅스 버전을 반환하지 않습니다 android os version – Karioki

+1

@ arjun_9990 Who 그랬 겠지? –

+0

나는 실수로 그것을 안드로이드 버전으로 받아 들였고, 다른 사람들도 그렇게했을지도 모른다. 올바른 방법으로 퍼팅하지 못해 미안합니다. – Karioki

2

에서이 사람을보십시오, 나는 모든 당신을 위해 그것을 아주 쉽게 만들어 이 방법을 호출하십시오 : getDeviceSuperInfo();

private void getDeviceSuperInfo() { 
    Log.i(TAG, "getDeviceSuperInfo"); 

    try { 

     String s = "Debug-infos:"; 
     s += "\n OS Version: "  + System.getProperty("os.version")  + "(" + android.os.Build.VERSION.INCREMENTAL + ")"; 
     s += "\n OS API Level: " + android.os.Build.VERSION.SDK_INT; 
     s += "\n Device: "   + android.os.Build.DEVICE; 
     s += "\n Model (and Product): " + android.os.Build.MODEL   + " ("+ android.os.Build.PRODUCT + ")"; 

     s += "\n RELEASE: "   + android.os.Build.VERSION.RELEASE; 
     s += "\n BRAND: "   + android.os.Build.BRAND; 
     s += "\n DISPLAY: "   + android.os.Build.DISPLAY; 
     s += "\n CPU_ABI: "   + android.os.Build.CPU_ABI; 
     s += "\n CPU_ABI2: "  + android.os.Build.CPU_ABI2; 
     s += "\n UNKNOWN: "   + android.os.Build.UNKNOWN; 
     s += "\n HARDWARE: "  + android.os.Build.HARDWARE; 
     s += "\n Build ID: "  + android.os.Build.ID; 
     s += "\n MANUFACTURER: " + android.os.Build.MANUFACTURER; 
     s += "\n SERIAL: "   + android.os.Build.SERIAL; 
     s += "\n USER: "   + android.os.Build.USER; 
     s += "\n HOST: "   + android.os.Build.HOST; 


     Log.i(TAG + " | Device Info > ", s); 

    } catch (Exception e) { 
     Log.e(TAG, "Error getting Device INFO"); 
    } 

}//end getDeviceSuperInfo 
+1

이것은 StringBuilder/StringBuffer를 사용할 위치의 완벽한 예입니다. :) –