Edytowanie ramki odbywa się w 3 etapach:
- Kompozycja: sposób tworzenia określa, co ma się wyświetlać. Uruchamia funkcje kompozycyjne i tworzy drzewo UI.
- Układ: opcja Utwórz określa rozmiar i położenie każdego elementu w drzewie interfejsu.
- Rysunek: funkcja tworzenia renderuje poszczególne elementy interfejsu użytkownika.
Funkcja tworzenia wiadomości może w inteligentny sposób pominąć dowolną z tych faz. Załóżmy np., że 1 element graficzny zamienia się między 2 ikonami o tym samym rozmiarze. Ponieważ ten element nie zmienia rozmiaru i nie są dodawane ani usuwane żadne elementy drzewa UI, funkcja tworzenia może pominąć fazy kompozycji i układu, a następnie ponownie narysować ten element.
Błędy w kodowaniu mogą jednak utrudniać systemowi Compose określenie, które etapy może on bezpiecznie pominąć. W takim przypadku interfejs Compose uruchamia wszystkie 3 fazy, co może spowolnić działanie interfejsu użytkownika. Dlatego wiele sprawdzonych metod dotyczących wydajności pomaga w pominięciu etapów, które nie są potrzebne.
Więcej informacji znajdziesz w przewodniku Jetpack Compose Etapy.
Zasady ogólne
Oto kilka ogólnych zasad, których warto przestrzegać, aby poprawić skuteczność:
- Gdy tylko jest to możliwe, przenoś obliczenia z funkcji kompozycyjnych. Może być konieczne ponowne uruchomienie funkcji kompozycyjnych po każdej zmianie interfejsu użytkownika. Każdy kod umieszczony w elemencie kompozycyjnym jest wykonywany ponownie (potencjalnie dla każdej klatki animacji). Ogranicz kod elementu kompozycyjnego tylko do tego, co jest potrzebne do skompilowania interfejsu użytkownika.
- Odkładaj odczyty stanu na jak najdłuższy czas. Przenosząc odczyt stanu do etapu podrzędnego lub późniejszego etapu komponowania, możesz zminimalizować kompozycję lub całkowicie pominąć etap kompozycji. W tym celu przekazuj funkcje lambda zamiast wartości stanu w przypadku często zmieniających się stanów i preferuj modyfikatory oparte na lambda w przypadku często zmieniającego się stanu. Przykład tej metody znajdziesz w sekcji Odkładaj odczyty tak najdłużej, jak to możliwe w artykule Zastosuj sprawdzone metody.
Dodatkowe materiały
- Przewodnik po wydajności aplikacji: poznaj sprawdzone metody, biblioteki i narzędzia, które pomogą Ci zwiększać wydajność urządzeń z Androidem.
- Sprawdzanie wydajności: sprawdzanie wydajności aplikacji.
- Analiza porównawcza: analiza porównawcza wydajności aplikacji.
- Uruchamianie aplikacji: Zoptymalizuj uruchamianie aplikacji.
- Profile podstawowe: poznaj profile bazowe.