У нас есть Android TV (ATV), работающий на Android версии 8.1 и выше. Нам нужно получить события клавиш для клавиш громкости при нажатии на пульте ATV. К сожалению, мы не смогли получить события клавиш громкости от Android версии 8.1. Но мы можем получить события громкости клавиш из коробки Android версии Nougat 7.0.
Вопрос: Как мне нужно захватывать события клавиши громкости в Android TV box версий 8.1 и 9 [pie]?
Мы попробовали следующие API обратного вызова onKeyDown()
, onKeyUp()
, dispatchKeyEvent()
, onKeyLongPress()
и onKeyEvent()
в классе активности.
@Override
public boolean onKeyDown(int keyCode, KeyEvent event){
Log.d(TAG,"Key code pressed:" + event.getKeycode);
}
Ожидаемый результат
Код клавиши нажат: 25
Код клавиши нажат: 24
Фактический вывод onkeydown
не запускается для клавиш регулировки громкости
см. Фото .