1,爲了更規範,添加kernel部分的include/linux/input.h
該頭文件定義了想input子系統中上報的鍵值宏,雖然你可以直接上報int整數。
2,驅動中增加你新鍵值的響應部分
你的輸入設備的驅動中在新鍵值的相應中上報加上的上報值。
3,依次在
frameworks/base/native/include/android/keycodes.h
frameworks/base/libs/ui/Input.cpp b/frameworks/base/libs/ui/Input.cpp //這裏在isSystem中增加了相應的鍵值,還不清楚相關影響
frameworks/base/libs/ui/EventHub.cpp
frameworks/base/include/ui/KeycodeLabels.h
frameworks/base/core/res/res/values/attrs.xml
frameworks/base/core/java/android/view/KeyEvent.java
frameworks/base/api/current.xml
external/webkit/WebKit/android/plugins/ANPKeyCodes.h
這裏能力太淺沒能跟太好,只是grep到這些文件有正常鍵值的設置,就相應的添加到裏面了,哪位大俠能通透下就萬分感激了
4,爲相應的kl文件添加鍵值對這些東西都可以參考標準的鍵值,然後照抄出你自己的新建就可一了。
然後在apk中的onKey*中就可以捕獲到你新加的按鍵了
注:版本是2.3 相信其他版本原理是一樣的,搜索一個標準的鍵值,然後參考着去添加你自己的新鍵值