Im Folgenden finden Sie eine Liste der neuen Funktionen in Android Studio Dolphin.
Neu im Tool zum Erstellen von E-Mails
Im Folgenden finden Sie neue Funktionen und Verbesserungen für Jetpack Compose in Android Studio.
Compose Animation Coordination
Wenn Ihre Animationen in einer zusammensetzbaren Vorschau beschrieben sind, können Sie sie jetzt mit der Animation-Vorschau alle gleichzeitig prüfen und koordinieren. Sie können auch eine bestimmte Animation einfrieren.
Anmerkungen für Multiview-Videos erstellen
Sie können jetzt eine Anmerkungsklasse mit mehreren Vorschaudefinitionen definieren und diese neue Anmerkung verwenden, um diese Vorschauen gleichzeitig zu generieren. Mit dieser neuen Anmerkung können Sie sich eine Vorschau mehrerer Geräte, Schriftarten und Themen gleichzeitig ansehen, ohne diese Definitionen für jedes einzelne Composeable wiederholen zu müssen.
Anzahl der Zusammensetzungen im Layout Inspector
Wenn Sie Ihre Compose-Layouts debuggen, ist es wichtig zu wissen, wann sich Komponenten neu zusammensetzen und wann nicht, um zu verstehen, ob Ihre Benutzeroberfläche richtig implementiert ist. Wenn die App beispielsweise zu oft neu zusammengesetzt wird, führt sie möglicherweise mehr Arbeit aus, als erforderlich ist. Komponenten, die nicht wie erwartet neu zusammengesetzt werden, können jedoch zu unerwartetem Verhalten führen.
Im Layout-Inspektor können Sie jetzt sehen, ob einzelne Composeables in Ihrer Layouthierarchie neu zusammengesetzt oder übersprungen wurden. Diese Informationen werden in Echtzeit angezeigt, während Sie mit Ihrer App interagieren. Achten Sie zuerst darauf, dass in Ihrer App Compose 1.2.0-alpha03
oder höher verwendet wird. Stellen Sie dann die App wie gewohnt bereit.
Öffnen Sie das Fenster Layout-Inspektor und stellen Sie eine Verbindung zu Ihrem App-Prozess her. Im Komponentenbaum sollten neben der Layouthierarchie zwei neue Spalten angezeigt werden. In der ersten Spalte sehen Sie die Anzahl der Zusammensetzungen für jeden Knoten. In der zweiten Spalte sehen Sie die Anzahl der Übergänge für jeden Knoten. Ähnliche Informationen werden auch im Bereich Attribute angezeigt, wenn Sie ein Composeable in der Komponentenstruktur oder im Layout auswählen.
Wenn Sie die Zählung zurücksetzen möchten, klicken Sie oben im Bereich Component Tree (Komponentenstruktur) auf Reset (Zurücksetzen). Wenn Sie die Zählung zurücksetzen, können Sie besser nachvollziehen, ob eine bestimmte Interaktion mit Ihrer App neu zusammengesetzt oder übersprungen wurde.
Aktualisierter Wear OS-Emulator-Kopplungsassistent
Ab Android Studio Dolphin Canary 3 bietet der Wear OS-Emulator-Kopplungsassistent verbesserte Funktionen, mit denen sich Wear OS-Emulatoren einfacher verwalten und verbinden lassen. Sie haben jetzt folgende Möglichkeiten:
- Informationen zu Wear-Geräten finden Sie im Gerätemanager.
- Mehrere Wear-Geräte mit einem virtuellen oder physischen Smartphone koppeln
- Zuvor gekoppelte Geräte werden beim Starten automatisch wieder verbunden. Android Studio merkt sich jetzt das zuletzt eingerichtete Paar und koppelt es wieder.
Damit Sie diese neuen Funktionen nutzen können, müssen Ihre Smartphone-Emulatoren API-Level 30 oder höher haben und der Google Play Store installiert sein. Außerdem muss das API-Level Ihrer Wear-Emulatoren 28 oder höher sein. Wenn Sie auf die neuesten System-Images für Ihre emulierten Geräte umstellen möchten, gehen Sie zu Tools > SDK-Manager.
Weitere Informationen finden Sie unter Wear OS-Emulator-Kopplungsassistent verwenden.
Aktualisierte Wear OS-Emulator-Symbolleiste
Ab Android Studio Dolphin Canary 2 enthält die Symbolleiste des Wear-Emulators mit API-Level 28 oder höher Schaltflächen, die die physischen Tasten und gängigen Aktionen auf dem Gerät simulieren. Die neuen Schaltflächen sind: Schaltfläche 1 und Schaltfläche 2 (Schaltfläche 2 ist nur auf API-Level 30 oder höher verfügbar), die Palm-Schaltfläche und die Neigungsschaltfläche. Mit den neuen Schaltflächen in Ihrem Wear-Emulator können Sie unter anderem Folgendes tun:
- Wenn Sie den Inaktivmodus auf Ihrem Gerät aktivieren möchten, klicken Sie auf die Handfläche.
- Wenn Sie zum letzten Bildschirm zurückkehren möchten, der vor dem Ruhemodus angezeigt wurde, klicken Sie auf die Neigetaste.
Weitere Informationen finden Sie unter Gängige Aktionen im Emulator ausführen.
Neue Wear OS-Ausführungskonfigurationen
Es wurden neue Ausführungskonfigurationen hinzugefügt, mit denen sich Oberflächen, die speziell für Wear OS entwickelt wurden, wie Zifferblätter, Kacheln und Zusatzfunktionen, schnell ausführen und beheben lassen. Sie können diese neuen Konfigurationen im Dialogfeld Run/Debug Configurations (Konfigurationen ausführen/debuggen) erstellen, wenn Sie Ihre Anwendung ausführen.
Weitere Informationen finden Sie unter Wear OS-Ausführungs-/Debug-Konfigurationen.
Neuer Logcat
Logcat wurde aktualisiert, um das Parsen, Abfragen und Überwachen von Protokollen zu vereinfachen.
Neuer Formatierungstool
Logcat formatiert Protokolle jetzt so, dass nützliche Informationen wie Tags und Meldungen leichter zu finden sind und verschiedene Protokolltypen wie Warnungen und Fehler leichter zu erkennen sind.
Mehrere Logcat-Fenster erstellen
Sie können jetzt mehrere Tabs in Logcat erstellen, um ganz einfach zwischen verschiedenen Geräten oder Abfragen zu wechseln. Wenn Sie mit der rechten Maustaste auf einen Tab klicken, können Sie ihn umbenennen. Durch Klicken und Ziehen können Sie die Tabs neu anordnen.
Außerdem können Sie die Ansicht auf einem Tab jetzt aufteilen, um zwei Protokolle leichter zu vergleichen. Klicken Sie dazu mit der rechten Maustaste in die Protokollansicht und wählen Sie entweder Nach rechts aufteilen oder Nach unten aufteilen aus. Wenn Sie eine Aufteilung schließen möchten, klicken Sie mit der rechten Maustaste darauf und wählen Sie Schließen aus. Für jede Aufteilung können Sie eine eigene Geräteverbindung, Ansichtsoptionen und Abfrage festlegen.
Zwischen Ansichtsvoreinstellungen wechseln
In Logcat können Sie jetzt durch Klicken auf schnell zwischen den verschiedenen Ansichtsmodi Standard, Kompakt und Benutzerdefiniert wechseln.
Für jeden Ansichtsmodus gibt es eine andere Standardeinstellung, mit der mehr oder weniger Informationen wie Zeitstempel, Tags und Prozess-IDs (PID) angezeigt werden. Sie können jeden dieser Standardansichten und auch einen benutzerdefinierten Ansichtsmodus anpassen, indem Sie Ansicht ändern auswählen.
Neue Suche nach Schlüssel/Wert-Paaren
In der vorherigen Version von Logcat hatten Sie die Möglichkeit, entweder eine Stringsuche (mit Unterstützung für reguläre Ausdrücke) zu verwenden oder einen neuen Filter zu erstellen, indem Sie verschiedene Felder über die Logcat-Benutzeroberfläche ausfüllen. Die erste Option hat die Suche komplizierter gemacht und die zweite Option hat die Freigabe und Einrichtung von Abfragen erschwert. Wir haben die Suche jetzt vereinfacht, indem wir die Suche nach Schlüssel/Wert direkt im Hauptsuchfeld eingeführt haben.
Dieses neue Abfragesystem bietet die Genauigkeit, die Sie sich wünschen, ohne dass Sie auf reguläre Ausdrücke angewiesen sind. Außerdem können Sie frühere Abfragen aus dem Verlauf abrufen und mit anderen teilen. Außerdem haben Sie weiterhin die Möglichkeit, reguläre Ausdrücke zu verwenden und Protokolle basierend auf Schlüssel/Wert-Paaren auszuschließen. Hier sind einige Beispiele für die Verwendung des neuen Abfragesystems. Sie können aber auch einfach im Abfragefeld etwas eingeben, um Vorschläge zu erhalten:
- PIDs für das lokale App-Projekt:
package:mine
- Bestimmte Werte:
package:<package-ID>
tag:<tag>
level:[VERBOSE | INFO | ASSERT |DEBUG | WARN | ERROR ]
- Um einen bestimmten Wert auszuschließen, setzen Sie vor den Schlüssel das Zeichen
-
:-tag:<exclude-tag>
- Verwenden Sie reguläre Ausdrücke mit einem bestimmten Schlüssel, indem Sie nach dem Schlüssel ein
~
platzieren:tag~:<regular-expression-tag>
- Mit dem Ausschlüsse-Tag kombinieren:
-tag~:<exclude-regular-expression-tag>
Sie können sich auch einen Abfrageverlauf ansehen. Klicken Sie dazu im Abfragefeld auf und wählen Sie die gewünschten Abfragen aus dem Drop-down-Menü aus. Wenn Sie eine Abfrage zu Ihren Favoriten hinzufügen möchten, damit sie in allen Ihren Studioprojekten oben in der Liste bleibt, klicken Sie am Ende des Abfragefelds auf
.
Protokolle für App-Abstürze/Neustarts erfassen
Mit dem neuen Logcat können Sie jetzt einfacher Protokolle aus Ihrer App bei App-Abstürzen und Neustarts verfolgen, damit Sie keine wichtigen Protokolle bei diesen Ereignissen verpassen.
Wenn Logcat feststellt, dass Ihr App-Prozess angehalten und neu gestartet wurde, wird in der Ausgabe eine Meldung wie PROCESS ENDED
und PROCESS STARTED
angezeigt, wie unten dargestellt:
Wenn Sie Logcat neu starten, bleiben Ihre Sitzungskonfigurationen wie Tabaufteilungen, Filter und Ansichtsoptionen erhalten, sodass Sie die Sitzung ganz einfach fortsetzen können.
Von Gradle verwaltete Geräte
Um Konsistenz, Leistung und Zuverlässigkeit bei der Verwendung von virtuellen Android-Geräten für Ihre automatisierten instrumentierten Tests zu verbessern, führen wir verwaltete Gradle-Geräte ein. Mit dieser Funktion, die für API-Level 27 und höher verfügbar ist, können Sie virtuelle Testgeräte in den Gradle-Dateien Ihres Projekts konfigurieren. Das Build-System verwendet die Konfigurationen, um diese Geräte bei der Ausführung Ihrer automatisierten Tests vollständig zu verwalten, d. h. zu erstellen, bereitzustellen und wieder zu entfernen.
Mit dieser Funktion kann Gradle nicht nur die von Ihnen ausgeführten Tests, sondern auch den Lebenszyklus der Geräte sehen. So lässt sich die Qualität Ihrer Tests auf folgende Weise verbessern:
- Gerätebezogene Probleme beheben, damit Ihre Tests ausgeführt werden
- Verwendet Emulator-Snapshots, um die Gerätestartzeit und die Speichernutzung zu verbessern und die Geräte zwischen den Tests auf den ursprünglichen Zustand zurückzusetzen
- Testergebnisse werden im Cache gespeichert und nur Tests wiederholt, die wahrscheinlich zu anderen Ergebnissen führen.
- Bietet eine einheitliche Umgebung für die Ausführung von Tests zwischen lokalen und Remote-Testläufen
Außerdem wird mit Gradle Managed Devices ein neuer Emulatortyp eingeführt, der sogenannte automatisierte Testgeräte (ATD). Diese sind für eine bessere Leistung beim Ausführen von Instrumentierungstests optimiert. In Kombination mit der Unterstützung für Test-Sharding können Sie Ihre Testsuite auf mehrere ATD-Instanzen aufteilen, um die Gesamtzeit für die Testausführung zu reduzieren. Weitere Informationen zu von Gradle verwalteten Geräten und den zugehörigen Funktionen finden Sie unter Tests mit von Gradle verwalteten Geräten skalieren.
R8-Unterstützung mit Zuordnungsdateien basierend auf DEX-Anweisungsoffsets
Bei der Optimierung von Zeileninformationen kann R8 die Informationen jetzt in freigegebenen Debug-Informationsobjekten mit Zeilentabellen basierend auf Anweisungsoffsets codieren. Dadurch wird der Overhead der Linieninformationen erheblich reduziert. Die Zeilen in Methoden sind dann nicht mehr aufeinanderfolgend, sondern können je nach Größe der Anweisungen in Intervallen springen. Einige Tools berücksichtigen diese gemeinsame Codierung nicht.
Außerdem unterstützen Android-VMs ab O (API-Ebene 26) das Drucken von Anweisungsabständen in Stack-Traces, wenn die Methode keine Informationen zur Zeilennummer enthält. Wenn Sie mit minSdk 26 oder höher und ohne Informationen zur Quelldatei kompilieren, entfernt R8 die Informationen zur Zeilennummer vollständig.
Zustandslose Lambdas werden nicht mehr als Singletons desugared
Zustandslose Lambdas werden bei der Entzugerung nicht mehr als Singletons zugewiesen. Die Darstellung als Singletons erhöht den Codegrößen-Overhead aufgrund des hinzugefügten Felds und der Klasseninitialisierer sowie den Start-Overhead aufgrund der statischen Klasseninitialisierung. Zustandslose Lambdas werden jetzt an Verwendungsstellen auf die gleiche Weise wie zustandsabhängige Lambdas (Lambdas mit Erfassungen) zugewiesen.
R8 verhindert eine Verlangsamung der Überprüfung bei Android-Laufzeiten
Um Leistungsprobleme in Android-Laufzeiten (Dalvik und ART) zu beheben, werden in R8 (nicht D8) jetzt Bibliotheks-Stubs und Aufrufe von Bibliotheksmethoden für Bibliotheksklassen und ‑methoden eingeführt, die zur Laufzeit möglicherweise nicht vorhanden sind. Dadurch werden viele Überprüfungsprobleme beseitigt und die Laufzeitleistung verbessert. Diese Funktion ist immer aktiviert.
Unterstützung für JDK-11-APIs mit Java 8- und höher-API-Entzuckerung
Wenn Sie die Abhängigkeit „coreLibraryDesugaring“ verwenden, wird jetzt eine Implementierungsbibliothek unterstützt, die auf JDK-11 basiert. Weitere Informationen finden Sie im desugar_jdk_libs
Änderungsprotokoll.
Patch-Releases
Die folgende Liste enthält die Patch-Releases in Android Studio Dolphin.
Android Studio Dolphin | 2021.3.1 Patch 1 (Oktober 2022)
Mit Patch 1 unterstützt Android Studio Dolphin jetzt das Kotlin-Plug-in 1.7.20. Dieses Minor-Update enthält außerdem die folgenden Fehlerkorrekturen:
Behobene Probleme | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Android Gradle Plugin |
|
||||||||||||
Dexer (D8) |
|
||||||||||||
Importieren/Synchronisieren |
|
||||||||||||
Ressourcen |
|
||||||||||||
Schrumpfgerät (R8) |
|