Narzędzia
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Trudno jest stwierdzić, gdzie leży problem z wydajnością i który kod zacząć optymalizować. Zacznij od użycia narzędzi, które pomogą Ci zawęzić obszar problemu.
[narzędzie] Layout Inspector
Użyj Inspektora układu, aby sprawdzić układ i zobaczyć liczbę ponownych kompozycji.
Jeśli interfejs użytkownika działa słabo, często jest to spowodowane błędem w kodzie, który wymusza nadmierne ponowne komponowanie interfejsu. Z drugiej strony niektóre błędy w kodzie mogą uniemożliwiać ponowne komponowanie interfejsu, gdy jest to potrzebne, co oznacza, że zmiany w interfejsie nie będą widoczne na ekranie. Śledzenie ponownego komponowania może pomóc w wykryciu obu tych rodzajów problemów.
Sama zmiana kompozycji nie jest zła, ale nieoczekiwana zmiana kompozycji może być problemem.
Więcej informacji znajdziesz w dokumentacji dotyczącej liczby ponownych kompozycji w inspektorze układu.
Śledzenie kompozycji
Użyj śledzenia kompozycji, aby śledzić funkcje kompozycyjne w śladzie systemu. Ślady są często najlepszym źródłem informacji, gdy po raz pierwszy analizujesz problem z wydajnością. Pozwalają one sformułować hipotezę dotyczącą problemu i określić, od czego zacząć poszukiwania.
Dodatkowe materiały
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-30 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-30 UTC."],[],[],null,["# Tooling\n\nIt can be hard to know where a performance issue lies and what code to start\noptimizing. Start by using tools to help narrow down where your issue is.\n\nLayout Inspector\n----------------\n\nUse the [Layout Inspector](/develop/ui/compose/tooling/debug#layout_inspector) to inspect your layout and see recomposition\ncounts.\n\nIf your UI has poor performance, this is often because of a coding error that\nforces your UI to be recomposed excessively. On the other hand, some coding\nerrors can prevent your UI from being recomposed when it needs to be, which\nmeans UI changes aren't showing up on the screen. Tracking recompositions can\nhelp find both of these kinds of problems.\n\nRecomposition in itself is not bad; however, unexpected recomposition can be an\nissue.\n\nFor more information, see the Layout Inspector [recomposition counts](/develop/ui/compose/tooling/debug#recomposition-counts)\ndocumentation.\n\nComposition tracing\n-------------------\n\nUse [composition tracing](/develop/ui/compose/tooling/tracing) to trace your composable functions in a system\ntrace. Traces are often the best source of information when first looking into a\nperformance issue. They allow you to form a hypothesis of what the issue is and\nwhere to start looking.\n\nAdditional Resources\n--------------------\n\n- **[App performance guide](/topic/performance/overview)**: Discover best practices, libraries, and tools to improve performance on Android.\n- **[Inspect Performance](/topic/performance/inspecting-overview):** Inspect app performance.\n- **[Benchmarking](/topic/performance/benchmarking/benchmarking-overview):** Benchmark app performance.\n- **[App startup](/topic/performance/appstartup/analysis-optimization):** Optimize app startup.\n- **[Baseline profiles](/baseline-profiles):** Understand baseline profiles."]]