Google работи върху използването на модели за машинно обучение, за да предвиди кога потребителят иска да направи жест с плъзгане назад в Android 12.
Google пусна първата визуализация за разработчици на Android 12 онзи ден и ние ровим в кода, за да намерим всичко ново. Една от най-вълнуващите промени, които забелязахме, е основен ремонт на начина, по който Android открива жестовете за плъзгане назад. Ако бъде внедрен, Android 12 ще използва модели за машинно обучение, за да прогнозирам когато потребителят възнамерява да използва жеста назад.
С пускането на Android 10, Google въведени неговата система за жестова навигация на цял екран. Системата за навигация с жестове на Android поставя хапче в долната част на екрана, с което можете да взаимодействате, за да превключвате между приложения, да отваряте интерфейса на последните приложения или да отидете на началния екран. Междувременно бутонът за връщане назад беше заменен с жест за плъзгане навътре, който може да се задейства от лявата или дясната страна на екрана. Много мастило е разлято
проблемът с жеста назад на Android, но за заслуга на Google, те го направиха направи опита последователен в цялата екосистема и имат предоставени API за разработчиците, за да осигурят съвместимост с жеста. Въпреки че много приложения са се отдалечили от използването на a Чекмедже за навигация, все още има много приложения, при които жестът назад може да е в конфликт с потребителския интерфейс в приложението. За да разреши този проблем, Google тества нов подход, базиран на машинно обучение, за откриване на жестове назад в Android 12.Как в момента работи жестът назад на Android е както следва. Почти през цялото време от двете страни на екрана съществува невидима зона на задействане. Тази зона на задействане се простира между 18dp-40dp на ширина от страните на екрана в зависимост от дефинираната от потребителя настройка за задна чувствителност. Потребителят може да задейства жест назад, като просто постави пръст навсякъде в рамките на вложката и след това премести този пръст навътре след минимално разстояние. Google използва топлинни карти на екрана на телефона, когато проектира вмъкванията с жестове на гърба и те се спряха на зони за разпознаване, които потребителите смятат за ергономични и удобни за работа с една ръка.
Навигация с жестове в Android 10+. Източник: Google.
Проблемът с този подход, тъй като Google сами си признават, е, че някои потребители все още плъзгат, за да отворят чекмеджетата за навигация, което е в конфликт с жеста назад. Всяко приложение е проектирано по различен начин, но зоната за задействане на жеста назад все още казва същото. Този универсален подход към жеста на гърба не се съчетава добре с дизайна на някои приложения, така че Google експериментира с машинно обучение, за да замени текущия модел.
Докато проучваше промените, направени от Google в жестът с двойно докосване назад в Android 12, XDA признат разработчик Куини899 откри наличието на нов модел TensorFlow Lite и файл с речник, наречен "backgesture". Последното съдържа списък с 43 000 имена на пакети за популярни и неясни приложения за Android, включително 2 от Quinny899 собствени приложения. Вярваме, че този списък съдържа приложенията, срещу които Google е обучил своя модел за машинно обучение – т.е. те определят най-честите начални и крайни точки за жеста назад на базата на приложение по приложение. Задълбочавайки се, открихме, че моделът на машинно обучение е споменат в актуализирания клас EdgeBackGestureHandler в SystemUI на Android 12. Ако флагът за функция е активиран, тогава изглежда, че Android 12 ще използва ML модела, за да предвиди дали потребителят възнамерява да извърши жест назад или просто иска да навигира в приложението. Данните, подавани към ML модела за извеждане, включват началната и крайната точка на жеста, дали приложението е в списъка и ширината на дисплея в пиксели. Като алтернатива, ако флагът на функцията е деактивиран, тогава Android 12 просто се връща обратно към стандартния метод за откриване на плъзгане назад (т.е. вложки).
Понастоящем базираното на ML предвиждане на жестове назад е деактивирано по подразбиране в Android 12 Developer Preview 1. Възможно е Google да се откаже от този подход, ако в крайна сметка не е по-добър от съществуващия базиран на вмъкване модел. Въпреки това няма да знаем със сигурност, докато Google не представи Android 12 Beta след няколко месеца, тъй като това е времето, когато Google обикновено разкрива своите по-големи промени в Android.
Благодарим на PNF Software, че ни предостави лиценз за използване JEB декомпилатор, професионален инструмент за обратно инженерство за приложения за Android.