最近在做android上鼠标的研究,发现一个问题,4.0的更新说明里:为了方便起见,后面鼠标按钮被自动映射到KEYCODE_BACK,KEYCODE_FORWARD键,应用程序可以处理这些按键,支持鼠标按钮的基础和前进导航。

   那么,如何修改这里的鼠标按钮映射呢?

   在\frameworks\base\services\input\InputReader.cpp文件下修改

   uint32_t CursorButtonAccumulator::getButtonState() const {
       uint32_t result = 0;
       if (mBtnLeft) {
           result |= AMOTION_EVENT_BUTTON_PRIMARY;
       }
       if (mBtnRight) {
           result |= AMOTION_EVENT_BUTTON_BACK;

       }
       if (mBtnMiddle) {
           result |= AMOTION_EVENT_BUTTON_TERTIARY;
       }
       if (mBtnBack || mBtnSide) {
           result |= AMOTION_EVENT_BUTTON_BACK;
       }
       if (mBtnForward || mBtnExtra) {
           result |= AMOTION_EVENT_BUTTON_FORWARD;
       }
       return result;


上面的几个IF语句就说明了鼠标按键的作用,按需修改并重新编译即可。

来自eoeandroid:http://www.eoeandroid.com/thread-166498-1-1.html