2012-05-08 38 views
27

我有一個要求獲取運行我的應用程序的Android設備上的硬件相關信息。我需要以下信息。Android:以編程方式獲取硬件信息

  • CPU製造商,型號和序列號
  • SD卡製造商和序列號
  • 相機制造商及其他相關規範
  • 藍牙相關硬件信息
  • 無線網絡相關的硬件信息
  • RAM供應商/型號
  • 顯示器供應商和型號

有關此主題的任何幫助將不勝感激。

+2

嘗試'getResources()。getConfiguration()'; – Lucifer

+0

@heshan Perera-你有沒有找到這些硬件信息,如果有,請更新你的答案,以便像我這樣的其他人可以從中獲得幫助。謝謝。, –

+0

@Khanna不,我沒有設法找到這些信息。 –

回答

30
Log.i("ManuFacturer :", Build.MANUFACTURER); 
Log.i("Board : ", Build.BOARD); 
Log.i("Display : ", Build.DISPLAY); 

更多信息,可以發現從http://developer.android.com/reference/android/os/Build.html

+2

是的,我看到了這個,但它不符合我的要求。它不提供任何信息,如CPU供應商,時鐘速度等。有沒有辦法通過這個類訪問這些信息? –

+0

我也想知道設備相機規格 –

1

在android.os「建」類看起來會包含一些信息,你需要

使用它作爲

string build = Build.VERSION.DEVICE; 

android Hardware Info

+0

你不能將'Build.VERSION'分配給字符串。它給編譯錯誤。相反,您可以使用'Build.VERSION.'_SOMETHING_(例如** RELEASE **)並將其分配給String。否則,您可以將'Build.'_SOMETHING_(例如** DISPLAY **)賦值給一個String變量。 [Android Build](http://developer.android.com/reference/android/os/Build.html)和[Android Build.VERSION](http://developer.android.com/reference/android/os/Build .VERSION.html)不是嗎? – AnujAroshA

+0

['Build.VERSION'](https://developer.android.com/reference/android/os/Build.VERSION.html)沒有'DEVICE'字段,['Build'](https:// developer.android.com/reference/android/os/Build.html)本身。儘管如此,由Build提供的「String」。DEVICE'只包含設備本身的名稱,不包含問題所提及的任何信息。 – Bryan

5

您還可以獲得實時硬件信息。 Build。*參數是在編譯Android之前,甚至在硬件上部署它之前設置的。

您可以通過讀取/ proc/*「files」來訪問Linux實時硬件信息。

你可以做到這一點與 https://stackoverflow.com/a/3528239/997381

簡單地命令把cat /proc/cpuinfo

你可以用adb shell來測試這個,你不需要root權限。

12
Log.i("TAG", "SERIAL: " + Build.SERIAL); 
    Log.i("TAG","MODEL: " + Build.MODEL); 
    Log.i("TAG","ID: " + Build.ID); 
    Log.i("TAG","Manufacture: " + Build.MANUFACTURER); 
    Log.i("TAG","brand: " + Build.BRAND); 
    Log.i("TAG","type: " + Build.TYPE); 
    Log.i("TAG","user: " + Build.USER); 
    Log.i("TAG","BASE: " + Build.VERSION_CODES.BASE); 
    Log.i("TAG","INCREMENTAL " + Build.VERSION.INCREMENTAL); 
    Log.i("TAG","SDK " + Build.VERSION.SDK); 
    Log.i("TAG","BOARD: " + Build.BOARD); 
    Log.i("TAG","BRAND " + Build.BRAND); 
    Log.i("TAG","HOST " + Build.HOST); 
    Log.i("TAG","FINGERPRINT: "+Build.FINGERPRINT); 
    Log.i("TAG","Version Code: " + Build.VERSION.RELEASE); 
相關問題