2013-02-20 56 views
6

是否有任何機制(在SDK或NDK中)獲取有關當前顯示的供應商信息(或真正的任何信息)?特別是,我希望能夠發現OLED顯示器與其他LCD顯示器的區別,因爲我測試過的每個OLED器件都具有可怕的色彩保真度(過度飽和)。並且由於Android沒有顏色校正,因此需要在應用程序級別進行更正。作爲備受歡迎的OLED器件的手動列表並且通過器件類型進行查找的回退在理論上是可行的,但是(a)存在大量器件並且(b)在器件上工作而不是顯示級別增加了額外的複雜性設備使用外部顯示器。即使把這個列表放在一起將是一個挑戰...檢測Android中的顯示類型

+0

嘗試'Build.DISPLAY'我從來沒有使用過,所以我不能保證,但它可能包含一些有用的東西。 [Build docs](https://developer.android.com/reference/android/os/Build.html) – FoamyGuy 2013-02-20 16:41:54

+3

Build.DISPLAY顯然是作爲「可顯示(到用戶)版本的構建標識符」,而不是「物理顯示器的標識符」。 – addaon 2013-02-20 16:43:01

+2

我不認爲有這種信息的API調用。我想這是由某種供應商特定的設備驅動程序處理的,所以也許如果你檢查Android內核的源代碼,你可能會發現如何訪問這些驅動程序,但這只是一個模糊的猜測,實際上這可能是相當困難的核心東東。 – Ridcully 2013-02-22 17:47:52

回答

0

去過Android代碼,我問了一個罐頭,很確定地說,沒有API方法可以返回顯示類型。

+0

所以沒有人甚至試圖在Android上進行顏色校正? – addaon 2013-02-24 18:06:22

+0

@addaon色彩管理對於Android來說將是一個不錯的功能。當然,這是非常需要的各種顯示器。 – 2013-05-28 13:57:52

0

很多Android Build信息來自詢問/proc目錄。我開始在這裏尋找,希望找到一些東西 - 但有很多信息需要翻閱。這將是一個開始的好地方 - 或者在命令行的其他地方查看。

可以通過導航到platform-tools目錄,並輸入

./adb shell 

當一個設備連接訪問命令行。您也可以從代碼執行shell命令:

Process p = Runtime.getRuntime().exec("cat /proc/whatever"); 
//you can then use p to get the command output.