Вы можете настроить поддержку геймпада для навигации в Native App. Геймпад можно использовать как замену физического или виртуального пульта.
Вы можете настроить поддержку виртуального геймпада для вашего Native App. Виртуальный геймпад дублирует функциональность аналогового геймпада и виртуального пульта.
Обработка событий
Когда пользователь использует геймпад, ОС устройства передает следующие события:
- При нажатии кнопок передаются события, аналогичные событиям
KeyEvent
в Android. - При нажатии курков или использовании стиков передаются события, аналогичные событиям
MotionEvent
в Android.
Чтобы обрабатывать эти типы событий:
- Переопределите колбэк
onKeyDown
для регистрации событий типаKeyEvent
. - Реализуйте метод
onGenericMotionEvent
для регистрации событий типаMotionEvent
.
События нажатия кнопок
Кнопка на геймпаде | Код нажатия клавиши на клавиатуре Android |
---|---|
A | KeyEvent.KEYCODE_BUTTON_A = 96; |
B |
|
X |
|
Y |
|
Left |
|
Right |
|
Up |
|
Down |
|
RB | KeyEvent.KEYCODE_BUTTON_R1 = 103; |
LB | KeyEvent.KEYCODE_BUTTON_L1 = 102; |
RT | KeyEvent.KEYCODE_BUTTON_R2 = 105; |
LT |
|
Left Stick | Отклонение стика:
Клик по стику:
|
Right Stick | Клик по стику:
|
Гироскоп |
|
Виртуальный геймпад не имеет плавного хода триггеров и управления осями AXIS_RTRIGGER
, AXIS_LTRIGGER
и AXIS_THROTTLE
.