Optimizing Android app experiences for Chrome OS — статья разработчиков Chrome OS о том, что нужно сделать, чтобы Android-приложение стало удобным для пользователей Chrome OS. Основные моменты:
РЕКОМЕНДУЕМ:
Полезные параметры запуска Chrome
- Поддержка клавиатуры. С этим все просто, Android с первых версий поддерживает клавиатуру. Для обработки нажатий клавиш достаточно добавить в активность один обработчик:
123456789override fun onKeyUp(code: Int, ev: KeyEvent?): Boolean {return when (code) {KeyEvent.KEYCODE_J -> {// Обрабатываем нажатиеtrue}else -> super.onKeyUp(code, ev)}}
Следует иметь в виду, что ноутбуки на Chrome OS оснащены специальной клавишей «Обновить» (код кнопки: KEYCODE_REFRESH). В Android-приложениях эта кнопка по умолчанию обновляет SwipeRefreshLayout.
- Тачпад. Пользователи Chrome OS ожидают, что свайп двумя пальцами по тачпаду будет проматывать экран. Это поведение автоматически распространяется на Android-приложения, но если необходимо обрабатывать эти действия раздельно, то следует игнорировать MotionEvent с состоянием кнопок, равным нулю ( event.getButtonState() == 0).
- NDK. Если Android-приложение использует нативные библиотеки для платформы ARM, Chrome OS будет применять x86-транслятор для запуска кода библиотеки. Это снижает производительность, поэтому разработчику следует включать в приложение библиотеки для платформ ARM, x86 и AMD64.
- Разметка. Android уже давно позволяет использовать разную разметку и метод навигации в зависимости от ориентации и размера экрана. Поддержка разных устройств и положений экрана автоматически сделает приложение более удобным в использовании на устройствах с Chrome OS. Также стоит сделать обработчик смены разрешения в колбэке onConfigurationChanged на случай, если пользователь подключит внешний монитор.
РЕКОМЕНДУЕМ:
Как включить темный режим для сайтов в Google Chrome
Надеюсь данная статья поможет разработчикам оптимизировать Android-приложение для Chrome OS.