Implementuj zsynchronizowane przejścia aplikacji

Synchronizowane przejścia aplikacji to funkcja w systemie Android 9, która ulepsza istniejącą architekturę przenoszenia aplikacji. Gdy użytkownik otwiera, zamyka lub przełącza między aplikacjami, proces SystemUI lub Launcher (ekran główny) wysyła żądanie kontrolowania animacji klatka po klatce z gwarantowaną synchronizacją między animacjami widoku i animacjami okien. Kiedy SystemUI lub Launcher rysuje nową klatkę jako część animacji, żąda innej transformacji na animowanej powierzchni aplikacji, która określa sposób ułożenia aplikacji na ekranie i zaznacza żądanie (transakcję powierzchniową) do synchronizacji z ramka, którą aktualnie rysuje.

Pozwala to na nowe animacje przejścia aplikacji, które nie są możliwe w systemie Android 8.x i starszym. Na przykład animacja uruchamiania aplikacji może płynnie przekształcać ikony ekranu głównego na powierzchnię aplikacji, a animacja uruchamiania powiadomień może przekształcać powiadomienia na powierzchnię aplikacji.

Przykłady i źródło

Zobacz poniższe odniesienia do tej funkcji.

Aby zapoznać się z implementacją referencyjną animacji uruchamiania powiadomień, zobacz ActivityLaunchAnimator.kt .

Realizacja

Możesz zaimplementować tę funkcję w Launcherze/Systemowym interfejsie użytkownika zgodnie z wymaganiami lub możesz użyć implementacji AOSP w SystemUI/Launcher3.

Walidacja

Aby sprawdzić wydajność animacji, zmierz wydajność aplikacji sterującej, tj. SystemUI lub Launchera, podczas animacji, zgodnie z opisem w temacie Testowanie wydajności interfejsu użytkownika .