Optimierung von Android-Spielen

Android-Optimierungstools und ‑APIs wurden entwickelt, um Leistungsengpässe zu finden und Geräteeinschränkungen zu ermitteln. Gleichzeitig soll die Leistung für Spiele und grafikintensive Apps auf einem nachhaltigen Niveau maximiert werden.

  • Android GPU Inspector (AGI): Ein Android-Systemprofilerstellungstool, das erweiterte GPU-Tracing- und ‑Analysefunktionen für Spiele und grafikintensive Apps bietet.

  • Android Performance Tuner (APT): Mit diesem Tool können Sie Leistungsprobleme in Ihrem Spiel im Zusammenhang mit Qualitätseinstellungen, Szenen, Ladezeiten und Gerätemodellen finden.

  • Android Dynamic Performance Framework (ADPF): Optimieren Sie Spiele basierend auf den dynamischen Funktionen zur Verwaltung von Wärme, CPU und GPU der einzelnen Geräte.

  • Memory Advice API: Diese API liefert Schätzungen zur Speichernutzung und Benachrichtigungen zu Grenzwerten für Ihr Spiel, damit es auf einem optimalen Niveau bleibt und LMKs vermieden werden.

  • Game Mode API: Mit dieser API können Sie das Gameplay optimieren, indem Sie je nach Nutzereinstellungen oder spielspezifischen Konfigurationen bestimmte Merkmale wie Leistung oder Akkulaufzeit priorisieren.

  • Perfetto: Erfasst systemweite Leistungsinformationen und zeigt sie in einer webbasierten Benutzeroberfläche an.

  • Systrace: Zeichnet Systemaktivitäten auf und generiert Berichte, mit denen Leistungsprobleme erkannt werden können.

  • CPU-Profiler: Sie können die CPU-Nutzung und Threadaktivität Ihrer App entweder in Echtzeit oder anhand aufgezeichneter Traces untersuchen.

  • Meminfo-Klasse: Erfasst eine Momentaufnahme der Arbeitsspeicherzuweisung Ihrer App. Sie können dieses Feature auch über den Befehl meminfo dumpsys verwenden.

  • Fehlerbericht: Hier finden Sie Geräteprotokolle, Stacktraces und andere Diagnoseinformationen, die Ihnen helfen, Fehler in Ihrer App zu finden und zu beheben.

  • R8: Mit R8 können Sie den Java- und Kotlin-basierten Code und die Ressourcen Ihrer App verkleinern, optimieren und verschleiern, um die DEX-Größe zu reduzieren, die Startleistung zu verbessern und den Laufzeitspeicher-Aufwand zu minimieren.

  • R8 Configuration Analyzer: Mit diesem Tool können Sie Ihre R8-Keep-Regeln prüfen und optimieren, um zu breit gefasste Konfigurationen in Ihrer App oder in Drittanbieterbibliotheken zu erkennen. So können Sie die Codekomprimierung und die Verschleierung von Code sowie die DEX-Größe für die Java- und Kotlin-basierten Abhängigkeiten Ihres Spiels verbessern.

  • Baseline-Profile: Sie können die Startzeiten verbessern und Ruckeln in der Startphase reduzieren, indem Sie ART Ahead-of-Time (AOT)-Kompilierungsspezifikationen für die Java- und Kotlin-basierten Codepfade Ihres Spiels bereitstellen, z. B. für Launcher-Aktivitäten und die SDK-Initialisierung.

  • Macrobenchmark: Mit automatisierten Tests in Testumgebungen oder CI können Sie die App-Leistung auf hoher Ebene messen und testen, z. B. die Zeit für den Kaltstart und Vorgänge nach dem Start. Außerdem können Sie Baseline-Profile für Ihr Spiel generieren.