Google pracuje nad wykorzystaniem modeli uczenia maszynowego do przewidywania, kiedy użytkownik chce wykonać gest przesunięcia wstecz w Androidzie 12.
Google udostępniło pierwszą wersję Developer Preview Androida 12 pewnego dnia zagłębiliśmy się w kod, aby znaleźć wszystko, co nowe. Jedną z najbardziej ekscytujących zmian, jakie zauważyliśmy, jest zmiana sposobu, w jaki Android wykrywa gesty przesunięcia w tył. Jeśli zostanie wdrożony, Android 12 będzie korzystał z modeli uczenia maszynowego przewidywać gdy użytkownik zamierza użyć gestu cofania.
Wraz z premierą Androida 10 Google wprowadzony pełnoekranowy system nawigacji gestami. System nawigacji gestami w Androidzie umieszcza na dole ekranu pigułkę, za pomocą której można przełączać się między aplikacjami, otwierać interfejs najnowszych aplikacji lub przechodzić do ekranu głównego. Tymczasem przycisk Wstecz został zastąpiony gestem przesunięcia do wewnątrz, który można uruchomić z lewej lub prawej strony ekranu. Rozlano mnóstwo atramentu
problem z gestem pleców w Androidzie, ale trzeba przyznać, że Google tak sprawił, że doświadczenie było spójne w całym ekosystemie i mają dostarczonych interfejsów API dla programistów, aby zapewnić zgodność z gestem. Chociaż wiele aplikacji odeszło od używania pliku Szuflada nawigacji, nadal istnieje wiele aplikacji, w których gest cofania może powodować konflikt z interfejsem użytkownika w aplikacji. Aby rozwiązać ten problem, Google testuje nowe podejście oparte na uczeniu maszynowym do wykrywania gestów wstecz w Androidzie 12.Sposób działania gestu cofania w Androidzie jest następujący. Prawie cały czas po obu stronach ekranu znajduje się niewidoczny obszar wyzwalania. Ten obszar wyzwalania rozciąga się na szerokość od 18 dp do 40 dp od boków ekranu, w zależności od zdefiniowanego przez użytkownika ustawienia czułości tylnej. Użytkownik może wywołać gest cofania, po prostu umieszczając palec w dowolnym miejscu wstawki, a następnie przesuwając go do wewnątrz na minimalną odległość. Projektując wstawki gestów cofania, Google wykorzystał mapy cieplne ekranu telefonu osiedlili się obszary rozpoznawania, które użytkownicy uważają za ergonomiczne i przyjazne dla jednej ręki.
Nawigacja gestami w Androidzie 10+. Źródło: Google.
Problem z tym podejściem, jak Google sami przyznają, jest to, że niektórzy użytkownicy nadal przesuwają, aby otworzyć szuflady nawigacyjne, co koliduje z gestem Wstecz. Każda aplikacja jest zaprojektowana inaczej, ale obszar wyzwalania gestem cofania nadal mówi to samo. To uniwersalne podejście do gestu pleców nie pasuje zatem do sposobu projektowania niektórych aplikacji, dlatego Google eksperymentuje z uczeniem maszynowym, aby zastąpić obecny model.
Badając zmiany wprowadzone przez Google gest dwukrotnego dotknięcia wstecz w systemie Android 12, Uznany programista XDA Quinny899 odkrył obecność nowego modelu TensorFlow Lite i pliku słownika o nazwie „backgesture”. Ten ostatni zawiera listę 43 000 nazw pakietów zarówno popularnych, jak i mało znanych aplikacji na Androida, w tym 2 z Quinny899 własne aplikacje. Uważamy, że ta lista zawiera aplikacje, względem których Google wytrenował swój model uczenia maszynowego – tj. określili najczęstsze punkty początkowe i końcowe gestu wstecz dla poszczególnych aplikacji. Kopiąc głębiej, odkryliśmy, że odwołanie do modelu uczenia maszynowego znajduje się w zaktualizowanej klasie EdgeBackGestureHandler w SystemUI systemu Android 12. Jeśli flaga funkcji jest włączona, wydaje się, że Android 12 będzie korzystał z modelu ML, aby przewidzieć, czy użytkownik zamierzał wykonać gest cofania, czy po prostu chciał nawigować w aplikacji. Dane przekazywane do modelu ML w celu wnioskowania obejmują punkty początkowe i końcowe gestu, informację o tym, czy aplikacja znajduje się na liście, oraz szerokość wyświetlacza w pikselach. Alternatywnie, jeśli flaga funkcji jest wyłączona, Android 12 po prostu powraca do standardowej metody wykrywania machnięcia wstecz (tj. wstawki).
Obecnie przewidywanie gestów wstecz na podstawie uczenia maszynowego jest domyślnie wyłączone w wersji Android 12 Developer Preview 1. Możliwe, że Google odrzuci to podejście, jeśli okaże się, że nie będzie ono lepsze od istniejącego modelu opartego na wstawkach. Jednak nie będziemy tego pewni, dopóki Google nie zaprezentuje Androida 12 Beta za kilka miesięcy, ponieważ wtedy Google zwykle ujawnia większe zmiany w Androidzie.
Dziękujemy firmie PNF Software za udostępnienie nam licencji na użytkowanie Dekompilator JEB, profesjonalne narzędzie inżynierii wstecznej dla aplikacji na Androida.