2013-01-17 62 views
0

有沒有一種方法來編程檢查我的android設備上存在的外鍵(例如音量鍵,電源鍵,菜單鍵)。不同的設備可能具有不同的外部密鑰,因此想知道是否有方法來確定設備上存在的外部密鑰。如果不可能有不同的API來確定設備是否具有外部音量增大/減小鍵,電源鍵,相機鍵確定存在的外鍵

回答

0

對於大多數硬件特性/傳感器,您可以在PackageManager類中找到有用的常量。

特別是對於硬件菜單項,您需要使用ViewConfiguration類,它的hasPermanentMenuKey()方法。

而且我一直沒能找到有關檢測硬件音量鍵..任何

-1

是的,這是很容易的......其實這裏的一些代碼,以確定鍵存在:

boolean hasCameraKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_CAMERA); 
boolean hasVolumeKeys = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_VOLUME_UP) 
         && KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_VOLUME_DOWN); 
+0

我發現這個不可靠。我有一個設備只有一個電源按鈕,F1按鈕和後退按鈕,但deviceHasKey(KEYCODE_VOLUME_UP)返回true ... – xxtesaxx