Tools
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Es kann schwierig sein, herauszufinden, wo ein Leistungsproblem liegt und mit welchem Code Sie mit der Optimierung beginnen sollten. Verwenden Sie zuerst Tools, um den Ort des Problems einzugrenzen.
Layout Inspector
Mit dem Layout Inspector können Sie Ihr Layout untersuchen und die Anzahl der Neuzusammenstellungen sehen.
Wenn die Leistung Ihrer Benutzeroberfläche schlecht ist, liegt das oft an einem Programmierfehler, der dazu führt, dass die Benutzeroberfläche zu oft neu zusammengesetzt wird. Andererseits können einige Programmierfehler verhindern, dass die Benutzeroberfläche neu zusammengesetzt wird, wenn dies erforderlich ist. Das bedeutet, dass Änderungen an der Benutzeroberfläche nicht auf dem Bildschirm angezeigt werden. Durch das Erfassen von Recomposition-Vorgängen können beide Arten von Problemen gefunden werden.
Die Neuzusammenstellung an sich ist nicht schlecht, aber unerwartete Neuzusammenstellungen können ein Problem sein.
Weitere Informationen finden Sie in der Dokumentation zum Layout Inspector unter Anzahl der Neuzusammensetzungen.
Kompositionsverfolgung
Verwenden Sie Composition-Tracing, um Ihre zusammensetzbaren Funktionen in einem System-Trace zu erfassen. Traces sind oft die beste Informationsquelle, wenn Sie sich zum ersten Mal mit einem Leistungsproblem befassen. Sie ermöglichen es Ihnen, eine Hypothese zu formulieren, worin das Problem besteht und wo Sie mit der Suche beginnen sollten.
Zusätzliche Ressourcen
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2025-07-30 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 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."]]