Поддержка пульта
В комплекте с некоторыми умными устройствами поставляется пульт дистанционного управления.
Когда пользователь нажимает кнопки на пульте, ОС устройства передает события аналогичные событиям KeyEvent
в Android.
Вы можете обрабатывать эти события, например, переопределив колбэк onKeyDown()
:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.d("debug", "мы находимся здесь");
switch (keyCode) {
case KeyEvent.KEYCODE_POWER:
case KeyEvent.KEYCODE_VOLUME_MUTE:
case KeyEvent.KEYCODE_DPAD_UP:
case KeyEvent.KEYCODE_DPAD_RIGHT:
case KeyEvent.KEYCODE_DPAD_DOWN:
case KeyEvent.KEYCODE_DPAD_LEFT:
case KeyEvent.KEYCODE_DPAD_CENTER:
case KeyEvent.KEYCODE_BACK:
case KeyEvent.KEYCODE_SEARCH:
case KeyEvent.KEYCODE_HOME:
case KeyEvent.KEYCODE_VOLUME_UP:
case KeyEvent.KEYCODE_VOLUME_DOWN:
Log.d("OnKey", "Кнопка нажата");
Toast.makeText(MainActivity.this, "Кнопка нажата", Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
Виртуальный пульт
Нативные приложения салют поддерживают виртуальный пульт, который:
- дублирует функциональность аналогового пульта;
- управляет фокусом в приложении с помощью режима тачпада (смахивание вверх, вниз, вправо и влево);
- управляет громкостью звуков в приложении;
- позволяет вводить текст с помощью клавиатуры телефона;
- позволяет переключиться в режим виртуального геймпада;
- позволяет использовать акселерометр;
- поддерживает вызов виртуального ассистента.
Описание пульта
Пульт дистанционного управления поставляется со следующими умными устройствами:
- Салют ТВ;
- SberBox;
- SberBox Time;
- SberBox Top.
События нажатия кнопок
События нажатия кнопок умных устройств Sber аналогичны событиям нажатия стандартных клавиш клавиатуры Android:
Кнопка на пульте | Код нажатия клавиши на клавиатуре Android |
---|---|
Включить/Выключить | KeyEvent.KEYCODE_POWER = 26 |
Отключить звук | KeyEvent.KEYCODE_VOLUME_MUTE = 164 |
Вверх | KeyEvent.KEYCODE_DPAD_UP = 19 |
Вправо | KeyEvent.KEYCODE_DPAD_RIGHT = 22 |
Вниз | KeyEvent.KEYCODE_DPAD_DOWN = 20 |
Влево | KeyEvent.KEYCODE_DPAD_LEFT = 21 |
Ок | KeyEvent.KEYCODE_DPAD_CENTER = 23 |
Назад | KeyEvent.KEYCODE_BACK = 4 |
Вызов ассистента. Активирует микрофон | KeyEvent.KEYCODE_SEARCH = 84 |
Домой | KeyEvent.KEYCODE_HOME = 3 |
Увеличение громкости | KeyEvent.KEYCODE_VOLUME_UP = 24 |
Уменьшение громкости | KeyEvent.KEYCODE_VOLUME_DOWN = 25 |
Рекомендации по поддержке пульта
Активация ассистента
Для использования голосовых команд пользователь активирует ассистента через кнопку Салют на пульте. Это создает дополнительное условие: чтобы пользоваться приложениями, нужно держать пульт в руке.
Если приложение должно помогать людям, когда у них заняты руки, то увеличивайте время сценария без использования ассистента и пульта или выберите SberPortal для реализации этой идеи.
Приоритетная навигация
Навигация должна быть естественной и знакомой для пользователя. При этом она не должна отвлекать внимание от контента. Упростите доступ: пользователи хотят получать контент быстро и с минимальным количеством кликов.
Сделайте навигацию простой и не усложняйте интерфейс, добавляя ненужные уровни навигации. Используйте для этого цвет, размер, анимацию или комбинацию этих атрибутов.