检测中间(旋转)按钮点击android waer

检测中间(旋转)按钮点击android waer,android,android-studio,wear-os,Android,Android Studio,Wear Os,我正在为Android Wear开发一个应用程序,并且正在使用硬件按钮。 我可以通过onKeyDown覆盖捕捉按钮: public boolean onKeyDown(int keyCode, KeyEvent event){ Log.i("CLICK", Integer.toString(keyCode)); if (event.getRepeatCount() == 0) { if (keyCode == KeyEvent.KEYCODE_ST

我正在为Android Wear开发一个应用程序,并且正在使用硬件按钮。 我可以通过onKeyDown覆盖捕捉按钮:

    public boolean onKeyDown(int keyCode, KeyEvent event){
      Log.i("CLICK", Integer.toString(keyCode));
      if (event.getRepeatCount() == 0) {
        if (keyCode == KeyEvent.KEYCODE_STEM_1) {
          // Do stuff
          return true;
        } else if (keyCode == KeyEvent.KEYCODE_STEM_2) {
          // Do stuff
          return true;
        } else if (keyCode == KeyEvent.KEYCODE_STEM_3) {
          // Do stuff
          return true;
        }
      }
      return super.onKeyDown(keyCode, event);
    }
我还想点击中间的旋转按钮, 但当我点击这个按钮时,手表将返回默认的“主”手表屏幕, 并且没有记录任何事件

我可以设法捕捉旋转滚动,但这是我想使用的点击

    @Override
    public boolean onGenericMotionEvent(MotionEvent ev) {
        if (ev.getAction() == MotionEvent.ACTION_SCROLL && RotaryEncoder.isFromRotaryEncoder(ev)) {
            // // Note that we negate the delta value here in order to get the right scroll direction.
            // float delta = -RotaryEncoder.getRotaryAxisValue(ev)
            //         * RotaryEncoder.getScaledScrollFactor(getContext());
            // scrollBy(0, Math.round(delta));
            return true;
        }
        return super.onGenericMotionEvent(ev);
    }

这是可能的,还是不可能覆盖中间手表按钮的功能?

如果按onKeyDown中的RSB,则应将KEYCODE作为按键事件返回主页。 如果是这样的话,那么它只能由Android框架控制,应用程序不能用它做任何事情

这是官方的描述

密钥代码常量:主密钥。此密钥由框架和 从未交付给应用程序