Android Q представляет новое управление навигацией с помощью жестов, но Google запрещает использовать с его помощью сторонние приложения запуска.
Google впервые представил навигацию с помощью жестов в Android 9 Pie, которая теперь известна как двухкнопочная навигация. В бета-версии Android Q 2 Google обновил жесты, чтобы они стали более плавными и занимали меньше места. Новые жесты Android Q, возможно, больше похожи на iPhone, и представляют собой существенное улучшение по сравнению с жестами Android Pie, но еще предстоит внести улучшения. В предстоящем выпуске Q beta 5 Google подтвердил, что изменит поведение жестов для ящиков навигации, но ранняя утечка также показывает, что появится новая подсказка и анимация жестов Ассистента, а также опция чувствительности спины.
Теперь у нас есть больше информации о том, как Android Q beta 5 изменит навигацию с помощью жестов. Тот же Реддитор, который опубликовал новые изменения в жестах Ассистента. также подтверждено что сторонние программы запуска теперь несовместимы с навигацией с помощью жестов. Это неудивительно, учитывая, что поддержка жестов в сторонних программах запуска всегда была немного шаткой. Начиная с Android 9 Pie, компонент недавних приложений интегрирован в системную панель запуска по умолчанию. Новая панель жестов Android Q делает переключение между приложениями в обзоре последних приложений очень плавным, но это привело к тому, что поддержка сторонних лаунчеров стала еще более ошибочной по сравнению с Q beta 3. Похоже, что Google решил просто запретить пользователям включать навигацию с помощью жестов, когда панель запуска по умолчанию меняется на стороннее приложение.
На скриншотах выше, опубликованных пользователем /u/Charizarlslie, показано, что происходит, когда вы пытаетесь изменить панель запуска по умолчанию с включенной навигацией с помощью жестов. При изменении средства запуска по умолчанию стиль навигации возвращается к 3-кнопочной навигации, а опция навигации с помощью жестов становится недоступной. Мы изучили APK-файл SystemUI из бета-версии Q 5 и подтвердили, что класс NavigationModeController имеет добавлен метод отключения управления жестами, когда панель запуска по умолчанию переключается на несистемное приложение.
Интересно, что можно принудительно включить управление жестами, когда сторонняя программа запуска установлена по умолчанию, введя следующую команду ADB:
adbshellcmdoverlayenablecom.android.internal.systemui.navbar.gestural
Это связано с тем, что все три варианта жестов переключаются с помощью наложений, поэтому Google, вероятно, не предусмотрел, что пользователи включат наложение вручную.
ТБлагодарим PNF Software за предоставление нам лицензии на использование JEB-декомпилятор, инструмент профессионального уровня для обратного проектирования приложений Android.