Android Studio 4.2 (April 2021)

Android Studio 4.2 ist eine Hauptversion mit einer Vielzahl neuer Funktionen und Verbesserungen.

4.2.2 (Juni 2021)

Dieses kleine Update umfasst verschiedene Fehlerkorrekturen. Eine Liste der wichtigsten Fehlerkorrekturen finden Sie im entsprechenden Beitrag im Blog „Release Updates“.

4.2.1 (Mai 2021)

Dieses Nebenupdate enthält das Kotlin-Plug-in 1.5.0 und enthält verschiedene Fehlerkorrekturen. Eine Liste der wichtigsten Fehlerkorrekturen finden Sie im entsprechenden Beitrag im Blog „Release Updates“.

Android-Gradle-Plug-in 4.2.0

Die neueste Version des Android-Gradle-Plug-ins enthält viele Updates. Weitere Informationen finden Sie in den vollständigen Versionshinweisen zum Android-Gradle-Plug-in.

Gradle-Kompatibilität und Konfigurationsänderungen

Bei der Ausführung in Android Studio verwendet das Gradle-Build-Tool das gebündelte JDK von Studio. In früheren Releases war JDK 8 in Studio enthalten. In 4.2 ist jetzt jedoch JDK 11 gebündelt. Wenn Sie das neue gebündelte JDK zum Ausführen von Gradle verwenden, kann dies aufgrund von Änderungen an der automatischen Speicherbereinigung zu Inkompatibilitäten oder zu Leistungseinbußen bei der JVM führen. Diese Probleme werden in den Versionshinweisen zu AGP beschrieben.

Option zur Optimierung der Gradle-Synchronisierungszeit

Um die Leistung der Gradle-Synchronisierung zu verbessern, wird in Android Studio das Erstellen der Aufgabenliste während der Synchronisierung übersprungen. Dadurch kann die Gradle-Synchronisierung schneller abgeschlossen werden und die UI-Reaktionsfähigkeit bei sehr großen Projekten verbessert. Diese Option ist in Android Studio 4.2 standardmäßig aktiviert. Wenn Sie die Funktion deaktivieren möchten, gehen Sie zu Datei > Einstellungen > Experimentell (Einstellungen > Experimentell auf einem Mac) und entfernen Sie das Häkchen bei Do not build Gradle Aufgabenliste während der Gradle-Synchronisierung.

Datenbankprüfer

Verbesserungen am Abfrageeditor

Der Database Inspector enthält einige Verbesserungen, die das Schreiben und Ausführen Ihrer benutzerdefinierten SQL-Anweisungen erleichtern. Wenn Sie das Prüftool öffnen und den Tab Neue Abfrage öffnen, sollten Sie eine größere Editoroberfläche sehen, deren Größe angepasst werden kann, um Ihre Abfragen zu erstellen und zu formatieren, wie unten dargestellt.

DB Inspector-Editor

Darüber hinaus stellen wir jetzt einen Verlauf Ihrer vorherigen Suchanfragen zur Verfügung. Wenn Sie auf die Schaltfläche Abfrageverlauf anzeigen Schaltfläche zum Anzeigen des Abfrageverlaufs{: .inline-icon} klicken, sollte eine Liste der Abfragen angezeigt werden, die Sie zuvor für die aktuell ausgewählte Datenbank ausgeführt haben. Klicken Sie auf eine Abfrage in der Liste, um eine Vorschau der vollständigen Abfrage im Editor anzuzeigen, und drücken Sie die Eingabetaste, um sie in den Editor zu kopieren. Klicken Sie dann auf Ausführen, um die Anweisung auszuführen.

Befehl im Query Editor ausführen

Offlinemodus

In früheren Versionen von Android Studio wurden der Inspector und die zugehörigen Daten geschlossen, nachdem die Verbindung zu einem App-Prozess getrennt wurde, während der Database Inspector verwendet wurde. In Android Studio 4.2 haben wir die Möglichkeit hinzugefügt, die Datenbanken Ihrer App weiter zu prüfen, nachdem ein Prozess getrennt wurde. So lassen sich Fehler in der App nach einem Absturz leichter beheben.

Wenn eine Verbindung getrennt wird, lädt der Database Inspector Ihre Datenbanken herunter und stellt sie Ihnen im Offlinemodus zur Verfügung. Wenn Sie offline sind, können Sie Tabellen öffnen und Abfragen ausführen.

Hinweis: Wenn Sie die Verbindung zu einem Live-Anwendungsprozess wiederherstellen, kehrt der Database Inspector in den Live-Modus zurück und zeigt Ihnen nur die Daten an, die sich auf dem Gerät befinden. Das bedeutet, dass im Offlinemodus angezeigte Daten nicht erhalten bleiben, wenn Sie wieder eine Verbindung zu einem Anwendungsprozess herstellen. Aus diesem Grund lässt der Database Inspector im Offlinemodus keine Änderungsanweisungen bearbeiten oder ausführen.

Assistant für AGP aktualisieren

Mit einem neuen Upgrade Assistant for Android Gradle-Plug-in können Sie die AGP-Version für Ihr Projekt aktualisieren.

Dialogfeld „Upgradeassistent“ für das Android-Gradle-Plug-in

Dieses Tool baut auf der bestehenden AGP-Upgrade-Funktion auf und führt Sie durch projektweite Aktualisierungen/Refaktorierungen. Es enthält eine Vorschau der Updates, um potenzielle funktionsgefährdende Änderungen vor der Ausführung des AGP-Upgrades zu vermeiden.

Vorschau der Änderungen, die vom Upgrade-Assistenten durchgeführt werden sollen

System-Trace: Verbesserte Messwerte für Arbeitsspeicher und Grafik

Im CPU-Profiler enthält das Feature System Trace jetzt neue Messwerte zum Analysieren der Anwendungsleistung und umfasst Folgendes:

  • Tabelle mit Ereignissen: Listet alle Trace-Ereignisse im aktuell ausgewählten Thread auf.

  • BufferQueue: Im Abschnitt „Display“ zeigt dieser neue Track die Pufferanzahl der BufferQueue der App an (0, 1 oder 2), um den Status der Bildzwischenspeicher beim Wechsel zwischen den Android-Grafikkomponenten zu verstehen.

    Pufferwarteschlange für Systemverfolgung

  • CPU-Frequenz: Im Bereich „CPU-Kerne“ zeigt dieser neue Track die CPU-Frequenz nach Kern an und gibt an, wie hart jeder Kern arbeitet.

    CPU-Frequenz des System-Trace

  • Prozessspeicher (RSS): In diesem neuen Fenster wird der aktuell von der Anwendung verwendete physische Speicher angezeigt.

    System-Trace-Prozessspeicher (RSS)

Weitere Informationen finden Sie unter CPU-Aktivität mit CPU Profiler untersuchen.

Neue Aktualisierungsaktion des Layout Inspectors

Der in Android Studio 4.0 eingeführte Layout Inspector wurde für die Echtzeitprüfung des UI-Stacks einer laufenden App entwickelt. Unter Umständen ist es aber nicht immer sinnvoll, mit dem Layout Inspector sofort die Vorgänge in Ihrer App darzustellen, da Sie möglicherweise zu einem bestimmten Zeitpunkt einen Snapshot des Layouts Ihrer App überprüfen oder die Auswirkungen von Live-Updates auf die Leistung minimieren möchten.

Wenn Sie manuell einen Snapshot der UI-Daten aus Ihrer App laden möchten, deaktivieren Sie zuerst die Option Live-Updates. Anschließend können Sie auf die Schaltfläche Aktualisieren {:.inline-icon} klicken, um einen neuen Snapshot des UI-Stacks zur Prüfung zu erstellen. Der Layout Inspector merkt sich jetzt Ihre Einstellung, Liveupdates zwischen Sitzungen aktiviert oder deaktiviert zu lassen.

Unterstützung für sichere Args

Safe Args ist ein Gradle-Plug-in, das einfache Objekt- und Builder-Klassen für die typsichere Navigation und den Zugriff auf zugehörige Argumente generiert. Android Studio bietet jetzt umfassendere Unterstützung bei der Arbeit mit sicheren Args, wie unten beschrieben:

  • Automatische Vervollständigungen für Directions, Args und die verschiedenen Builder-Klassen
  • Unterstützung für Java- und Kotlin-sichere Argument-Plug-ins
  • Navigation von der Quelle zu XML

R8-Retrace jetzt in Befehlszeilentools verfügbar

Das in Version 4.0 der Befehlszeilentools verfügbare R8-Retrace-Tool ist ein eigenständiges Tool, mit dem Sie den ursprünglichen Stacktrace aus einem verschleierten Stacktrace abrufen können.

Sie können dieses Paket mit dem SDK-Manager herunterladen, der das R8-Retrace in android_sdk/cmdline-tools installiert. Alternativ können Sie das Paket mit den eigenständigen Befehlszeilentools herunterladen.

Informationen zur Nutzung finden Sie im Nutzerhandbuch unter R8-Retrace.

Auf mehreren Geräten bereitstellen

Um App-Tests über Geräte und API-Level hinweg zu optimieren, können Sie Ihre App jetzt gleichzeitig auf mehreren Geräten oder Emulatoren bereitstellen. Gehen Sie dazu so vor:

  1. Wählen Sie im Drop-down-Menü des Zielgeräts (oben in der Mitte der IDE) die Option Mehrere Geräte auswählen aus.

    Drop-down-Menü für Zielgerät

  2. Wählen Sie die Zielgeräte aus und klicken Sie auf OK.

    Dialogfeld „Gerätesatz ändern“

  3. Führen Sie die Anwendung aus.

Neue removable-Einstellung für Funktionsmodule

Das Android-Gradle-Plug-in 4.2 verwendet bundletool 1.0.0. Dadurch ändert sich das Verhalten von Apps, die Featuremodule verwenden: Jedes Featuremodul, das als dist:install-time angegeben und nicht explizit als dist:removable gekennzeichnet ist, kann standardmäßig nicht entfernt werden. Mit dieser neuen Einstellung wird die Zusammenführung von Modulen zur Installationszeit mit dem Basismodul optimiert, was möglicherweise die Anwendungsleistung für einige Anwendungen verbessert.

Damit Featuremodule entfernt werden können, legen Sie für jedes Modul, das Sie deinstallieren möchten, dist:removable="true" fest.

Weitere Informationen zu dieser neuen Einstellung finden Sie in der Dokumentation zum dist:removable-Tag in der Dokumentation zum Feature-Modul-Manifest.

Änderungen übernehmen

Damit du bei der Iteration deiner App noch produktiver bist, haben wir die folgenden Verbesserungen beim Übernehmen von Änderungen für Geräte mit Android 11 oder höher vorgenommen:

Unterstützung zusätzlicher Codeänderungen

Bei Geräten mit Android 11 oder höher können Sie jetzt statische finale primitive Felder hinzufügen und diese Änderungen dann in Ihrer laufenden Anwendung bereitstellen. Klicken Sie dazu entweder auf Codeänderungen anwenden Symbol zum Anwenden von Codeänderungen oder auf Änderungen übernehmen und Aktivität neu starten Symbol für Änderungen übernehmen und Aktivität neu starten.

Sie können jetzt auch Ressourcen hinzufügen und diese Änderungen dann in Ihrer laufenden App auf Geräten mit Android 11 bereitstellen. Klicken Sie dazu auf Änderungen übernehmen und Aktivität neu starten Symbol für Änderungen übernehmen und Aktivität neu starten.

Aktualisierung der Assistenten für „Neues Projekt“ und „Neues Modul“

Die Assistenten Neues Projekt und Neues Modul wurden aktualisiert, um das Suchen, die Auswahl einer Vorlage und die Eingabe von Informationen über das neue Projekt oder Modul zu erleichtern.

Die Option Import .JAR/.AAR Package im Assistenten New Module wurde ebenfalls entfernt. Um eine JAR- oder AAR-Datei in Ihr Projekt zu importieren, verwenden Sie stattdessen das Dialogfeld „Project Structure“.

Kotlin 1.4.31

Android Studio 4.2 enthält Kotlin 1.4.31. Die wichtigsten Änderungen finden Sie im Änderungslog zu Kotlin 1.4.0.

Umgebungsvariable ANDROID_SDK_HOME verworfen

Die Umgebungsvariable ANDROID_SDK_HOME wurde verworfen und wurde durch ANDROID_PREFS_ROOT ersetzt. Weitere Informationen finden Sie unter Emulator-Umgebungsvariablen.

Bekannte Probleme bei Android Studio 4.2

In diesem Abschnitt werden bekannte Probleme in Android Studio 4.2 beschrieben. Eine vollständige Liste finden Sie auf der Seite Bekannte Probleme.

Android Studio 4.2.0 generiert Projekte mit der falschen Kotlin-Version: „1.5.0-release-764“

Wenn Sie Android Studio 4.2.0 verwenden und ein Upgrade auf das Kotlin-Plug-in 1.5.0 durchgeführt haben, können neue von Studio erstellte Kotlin-Projekte aufgrund des folgenden Gradle-Synchronisierungsfehlers nicht erstellt werden:

Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.

Ersetzen Sie als Behelfslösung 1.5.0-release-764 durch 1.5.0 in den build.gradle-Dateien des Projekts.

Fehler bei Verwendung unterschiedlicher Passwörter für Schlüssel und Schlüsselspeicher

Ab Version 4.2 wird Android Studio jetzt unter JDK 11 ausgeführt. Diese Aktualisierung führt zu einer zugrunde liegenden Verhaltensänderung in Bezug auf Signaturschlüssel.

Wenn Sie Build > Signiertes Bundle / APK generieren aufrufen und versuchen, die App-Signatur für ein App-Bundle oder ein APK zu konfigurieren, kann die Eingabe verschiedener Passwörter für den Schlüssel und den Schlüsselspeicher zu folgendem Fehler führen:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

Geben Sie für den Schlüssel und den Schlüsselspeicher dasselbe Passwort ein, um dieses Problem zu umgehen.

Android Studio wird nach der Installation von Version 4.2 nicht gestartet

Studio versucht, vorherige .vmoptions zu importieren und zu bereinigen, damit sie mit der von JDK 11 verwendeten Speicherbereinigung funktioniert. Wenn dieser Vorgang fehlschlägt, wird die IDE für bestimmte Nutzer, die benutzerdefinierte VM-Optionen in der Datei .vmoptions festgelegt haben, möglicherweise nicht gestartet.

Zur Umgehung dieses Problems empfehlen wir, benutzerdefinierte Optionen in .vmoptions mithilfe des Zeichens # auskommentieren. Die .vmoptions-Datei befindet sich an folgenden Speicherorten:

Windows

C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Linux

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

Wenn Studio nach Ausprobieren dieser Problemumgehung immer noch nicht startet, lesen Sie den Abschnitt Studio wird nach dem Upgrade nicht gestartet weiter unten.