2011-08-16 66 views
11

是否有API用于以编程方式提取有关当前Android设备的信息?例如,像“模型”,“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”)返回Linux版本不是Android操作系统版本 – Karioki

+1

@ arjun_9990谁说会呢? –

+0

我误将它作为android版本,所以其他人也可能。对不起,没有正确的方式。 – 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的最佳例子:) –