Android Studio 4.1 (August 2020)

Android Studio 4.1 ist eine Hauptversion mit vielen neuen Funktionen und Verbesserungen.

4.1.3 (März 2021)

Dieses kleinere Update enthält verschiedene Fehlerkorrekturen. Eine Liste der wichtigsten Fehlerkorrekturen finden Sie im zugehörigen Beitrag im Release Updates-Blog.

4.1.2 (Januar 2021)

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2021/01/android-studio-412-available.html">
    Release Updates blog</a>.
</p>
<p><b>4.1.1 (November 2020)</b></p>

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2020/11/android-studio-411-available.html">
    Release Updates blog</a>.
</p>

Neuer Database Inspector

Mit dem neuen Database Inspector können Sie Ihre Datenbanken in Ihrer laufenden App untersuchen, abfragen und ändern. Stellen Sie zuerst Ihre App auf einem Gerät mit API-Level 26 oder höher bereit und wählen Sie in der Menüleiste View > Tool Windows > Database Inspector aus.

Weitere Informationen finden Sie unter Datenbank mit dem Database Inspector debuggen.

Android-Emulator direkt in Android Studio ausführen

Sie können den Android-Emulator jetzt direkt in Android Studio ausführen. Mit dieser Funktion können Sie Platz auf dem Bildschirm sparen, schnell zwischen dem Emulator und dem Editorfenster wechseln und Ihren IDE- und Emulator-Workflow in einem einzigen Anwendungsfenster organisieren.

Der Emulator wird in einem Toolfenster in Android Studio gestartet.

Weitere Informationen finden Sie in der Dokumentation zum Android-Emulator.

TensorFlow Lite-Modelle verwenden

Mit ML Model Binding können Sie .tflite-Modelldateien ganz einfach direkt importieren und in Ihren Projekten verwenden. Android Studio generiert benutzerfreundliche Klassen, mit denen Sie Ihr Modell mit weniger Code und besserer Typsicherheit ausführen können.

Unterstützte Modelle

Die aktuelle Implementierung von ML Model Binding unterstützt Bildklassifizierungs- und Stilübertragungsmodelle, sofern sie mit Metadaten angereichert sind. Im Laufe der Zeit wird die Unterstützung auf andere Problembereiche wie Objekterkennung, Bildsegmentierung und Textklassifizierung ausgeweitet.

Auf TensorFlow Hub finden Sie eine Vielzahl vortrainierter Modelle mit Metadaten. Sie können auch selbst Metadaten zu einem TensorFlow Lite-Modell hinzufügen, wie unter Metadaten zu TensorFlow Lite-Modellen hinzufügen beschrieben.

Modelldatei importieren

So importieren Sie eine unterstützte Modelldatei:

  1. Öffnen Sie das Dialogfeld zum Importieren von TensorFlow Lite-Modellen im Menü „Datei“ unter Datei > Neu > Andere > TensorFlow Lite-Modell.
  2. Wählen Sie die Modelldatei .tflite aus, die Sie zuvor heruntergeladen oder erstellt haben.
  3. Klicken Sie auf Fertig.

Dadurch wird die Modelldatei in Ihr Projekt importiert und im Ordner ml/ platziert. Wenn das Verzeichnis nicht vorhanden ist, wird es von Android Studio erstellt.

TensorFlow Lite-Modell importieren

Modellmetadaten und ‑nutzung ansehen

Wenn Sie die Details zu einem importierten Modell aufrufen und eine Anleitung zur Verwendung in Ihrer App erhalten möchten, doppelklicken Sie in Ihrem Projekt auf die Modelldatei, um die Seite „Modell-Viewer“ zu öffnen. Dort werden die folgenden Informationen angezeigt:

  • Modell:Allgemeine Beschreibung des Modells
  • Tensoren:Beschreibung der Eingabe- und Ausgabetensoren
  • Beispielcode:Beispiel für die Interaktion mit dem Modell in Ihrer App

Hier ein Beispiel mit mobilenet_v1_0.25_160_quantized.tflite:

Wie das Beispiel zeigt, erstellt Android Studio eine Klasse namens MobilenetV1025160Quantized für die Interaktion mit dem Modell.

Wenn das Modell keine Metadaten hat, werden auf diesem Bildschirm nur minimale Informationen angezeigt.

Bekannte Probleme und Workarounds

  • Die Unterstützung für TensorFlow Lite-Modelle für andere Problembereiche als Bildklassifizierung und Stilübertragung ist derzeit begrenzt. Der Import sollte zwar funktionieren, aber einige Modelleingaben und/oder -ausgaben werden durch TensorBuffers anstelle von benutzerfreundlichen Typen dargestellt. Bei Modellen ohne Metadaten sind alle Modelleingaben und ‑ausgaben TensorBuffers.
  • Modelle mit anderen Ein- und Ausgabedatentypen als DataType.UINT8 oder DataType.FLOAT32 werden nicht unterstützt.

Diese Funktion befindet sich noch in der Entwicklung. Bitte geben Sie Feedback oder melden Sie Fehler.

Native Memory Profiler

Der Android Studio Memory Profiler enthält jetzt einen Native Memory Profiler für Apps, die auf physischen Geräten mit Android 10 oder höher bereitgestellt werden. Mit dem Native Memory Profiler können Sie Speicherzuweisungen und ‑freigaben aus nativem Code aufzeichnen und kumulative Statistiken zu nativen Objekten ansehen.

Eine Aufzeichnung im Native Memory Profiler

Weitere Informationen zum Native Memory Profiler finden Sie unter Arbeitsspeichernutzung Ihrer App mit dem Memory Profiler untersuchen.

Bekannte Probleme und Workarounds

Der Native Memory Profiler in Android Studio 4.1 funktioniert nicht für Geräte mit Android 11. Die Unterstützung für das Profiling von Android 11-Geräten ist derzeit in der Vorschauversion 4.2 verfügbar.

Seit der ersten Version 4.1 ist die Profilerstellung für den App-Start deaktiviert. Diese Option wird in einer zukünftigen Version aktiviert.

Als Workaround können Sie den eigenständigen Perfetto-Befehlszeilenprofiler verwenden, um Startprofile zu erfassen.

System Trace UI: Einfachere Auswahl, neuer Analysetab und mehr Daten zum Rendern von Frames

Die System Trace-Benutzeroberfläche im Android Studio-Profiler wurde verbessert:

  • Rechteckauswahl:Im Bereich Threads können Sie jetzt mit der Maus ein rechteckiges Gebiet auswählen, in das Sie hineinzoomen können, indem Sie oben rechts auf die Schaltfläche Auf Auswahl zoomen Schaltfläche „Auf Auswahl zoomen“ in Profilern klicken oder die Tastenkombination M verwenden. Wenn Sie ähnliche Threads nebeneinander platzieren, können Sie mehrere Threads gleichzeitig auswählen, um sie alle auf einmal zu untersuchen. Beispielsweise möchten Sie möglicherweise Analysen in mehreren Worker-Threads durchführen.

  • Tab „Zusammenfassung“:Auf dem neuen Tab Zusammenfassung im Bereich Analyse wird Folgendes angezeigt:

    • Zusammengefasste Statistiken für alle Vorkommen eines bestimmten Ereignisses, z. B. die Anzahl der Vorkommen und die Mindest-/Höchstdauer.

    • Statistiken zu Trace-Ereignissen für das ausgewählte Vorkommen.

    • Daten zur Verteilung des Thread-Status.

    • Die am längsten laufenden Instanzen des ausgewählten Trace-Ereignisses.

    Wenn Sie zu einem anderen Ereignis wechseln möchten, wählen Sie eine andere Zeile in der Tabelle aus.

  • Anzeigedaten:Im Bereich Anzeige finden Sie neue Zeitachsen für SurfaceFlinger und VSYNC, mit denen Sie Rendering-Probleme in der Benutzeroberfläche Ihrer App untersuchen können.

Eine grundlegende Anleitung zum Aufzeichnen eines System-Traces finden Sie im Abschnitt Traces aufzeichnen unter CPU-Aktivität mit dem CPU-Profiler untersuchen.

Eigenständige Profiler jetzt verfügbar

Mit den neuen eigenständigen Profilern können Sie Ihre App jetzt profilieren, ohne die vollständige Android Studio IDE auszuführen.

Eine Anleitung zur Verwendung der eigenständigen Profiler finden Sie unter Eigenständige Profiler ausführen.

Unterstützung für die Dagger-Navigation

IDE-Gutter-Aktionen zum Navigieren zu Dagger-Consumern und -Providern

Android Studio erleichtert die Navigation zwischen Dagger-bezogenem Code durch neue Gutter-Aktionen und erweiterte Unterstützung im Fenster Verwendungen suchen.

  • Neue Aktionen im Gutter:Für Projekte, die Dagger verwenden, bietet die IDE Gutter-Aktionen, mit denen Sie zwischen Ihrem mit Dagger annotierten Code navigieren können. Wenn Sie beispielsweise auf die -Gutter-Aktion neben einer Methode klicken, die einen bestimmten Typ verwendet, werden Sie zum Anbieter dieses Typs weitergeleitet. Wenn Sie hingegen auf die -Aktion in der Spalte klicken, werden Sie zu der Stelle weitergeleitet, an der ein Typ als Abhängigkeit verwendet wird.

  • Knoten „Verwendungen suchen“:Wenn Sie Verwendungen suchen für einen Anbieter eines bestimmten Typs aufrufen, enthält das Fenster Suchen jetzt den Knoten Abhängigkeitsnutzer, in dem die Nutzer dieses Typs aufgeführt sind. Wenn Sie diese Aktion umgekehrt für einen Consumer einer Dagger-injected-Abhängigkeit aufrufen, wird im Find-Fenster der Anbieter dieser Abhängigkeit angezeigt.

Material Design-Komponenten: Aktualisierte Themes und Stile in neuen Projektvorlagen

Animation: Erstellen eines Projekts in Android Studio mit neuen Material Design-Eigenschaften.

Android Studio-Vorlagen im Dialogfeld Create New Project (Neues Projekt erstellen) verwenden jetzt standardmäßig Material Design Components (MDC) und entsprechen den aktualisierten Richtlinien für Themes und Stile. Folgende Updates sind jetzt verfügbar:

  • MDC: Projekte hängen von com.google.android.material:material in build.gradle ab. Basis-App-Designs verwenden Theme.MaterialComponents.*-Parents und überschreiben aktualisierte MDC-Farb- und „on“-Attribute.

  • Farbressourcen: Farbressourcen in colors.xml verwenden Literalnamen (z. B. purple_500 anstelle von colorPrimary).

  • Themenressourcen: Themenressourcen befinden sich in themes.xml (anstelle von styles.xml) und verwenden Theme.<var><var>-Namen.

  • Dunkles Design: Die Basis-App-Designs verwenden DayNight-Parents und sind zwischen res/values und res/values-night aufgeteilt.

  • Themenattribute: In Layouts und Styles wird auf Farbressourcen als Themenattribute verwiesen (z. B. ?attr/colorPrimary), um hartcodierte Farben zu vermeiden.

IntelliJ IDEA 2020.1

Die Android Studio-IDE wurde mit Verbesserungen aus IntelliJ IDEA bis zur Version 2020.1 aktualisiert. Dazu gehören ein neues Commit-Fenster, das Versionskontrollvorgänge ermöglicht, und ein neuer Zen-Modus, der durch Auswahl von View > Appearance > Enter Distraction Free Mode aktiviert werden kann.

Weitere Informationen zu den Verbesserungen in Version 2020.1 finden Sie unter IDEA 2020.1.

Änderungen am IDE-Konfigurationsverzeichnis

Die Speicherorte der Nutzerkonfigurationsverzeichnisse wurden in die folgenden geändert:

Windows

Syntax: %APPDATA%\Google&lt;product><version>

Beispiel: C:\Users\YourUserName\AppData\Roaming\Google\AndroidStudio4.1

macOS

Syntax: ~/Library/Application Support/Google/<product><version>

Beispiel: ~/Library/Application Support/Google/AndroidStudio4.1

Linux

Syntax: ~/.config/Google/<product><version>

Beispiel: ~/.config/Google/AndroidStudio4.1

Diese neuen Verzeichnispfade entsprechen den neuesten Updates für IntelliJ IDEA, der IDE, auf der Android Studio basiert.

Wenn Studio nach einem Upgrade nicht neu gestartet wird, müssen Sie möglicherweise das Konfigurationsverzeichnis einer früheren Studio-Version löschen. Weitere Informationen finden Sie auf der Seite Bekannte Probleme.

Kotlin 1.3.72

Android Studio 4.1 enthält Kotlin 1.3.72, das eine Reihe von Korrekturen zur Verbesserung der Kotlin-Hervorhebung, -Prüfungen und -Codevervollständigung umfasst. Weitere Informationen finden Sie im Kotlin-Changelog 1.3.72.

Vorschau für benutzerdefinierte Ansichten

Wenn Sie eine benutzerdefinierte Ansicht erstellen, z. B. durch Erweitern der Klasse View oder Button, zeigt Android Studio jetzt eine Vorschau der benutzerdefinierten Ansicht an. Über das Drop-down-Menü in der Symbolleiste können Sie zwischen mehreren benutzerdefinierten Ansichten wechseln. Mit den Schaltflächen können Sie den Text vertikal oder horizontal um den Inhalt herumfließen lassen.

Benutzerdefinierte Ansichten in der IDE in der Vorschau ansehen

Hinweis:Wenn Sie Ihre Änderungen in der Vorschau nicht sehen, wählen Sie in der Menüleiste Build > Make Project aus.

Symbolisierung für native Absturzberichte

Wenn ein Absturz oder ANR-Fehler im nativen Code auftritt, generiert das System einen Stacktrace. Das ist ein Snapshot der Reihenfolge der verschachtelten Funktionen, die in Ihrem Programm bis zum Absturz aufgerufen wurden. Mit diesen Snapshots können Sie Probleme in der Quelle identifizieren und beheben. Sie müssen jedoch zuerst symbolisiert werden, um die Maschinenadressen wieder in für Menschen lesbare Funktionsnamen zu übersetzen.

Wenn Ihre App oder Ihr Spiel mit nativem Code wie C++ entwickelt wurde, können Sie jetzt für jede Version Ihrer App Debugging-Symboldateien in die Play Console hochladen. Die Play Console verwendet diese Debugging-Symboldateien, um die Stacktraces Ihrer App zu symbolisieren. So lassen sich Abstürze und ANR-Fehler leichter analysieren. Informationen zum Hochladen von Dateien mit Symbolen zum Debuggen finden Sie unter Unterstützung für native Abstürze.

Änderungen übernehmen

Damit Sie bei der Entwicklung Ihrer App produktiver sein können, haben wir die Funktion „Änderungen anwenden“ für Geräte mit Android 11 Developer Preview 3 oder höher verbessert:

Schnellere Bereitstellung

Wir haben viel in die Optimierung der Iterationsgeschwindigkeit investiert und eine Methode entwickelt, mit der Änderungen auf einem Gerät bereitgestellt und beibehalten werden können, ohne dass die Anwendung installiert werden muss. Nach der ersten Bereitstellung sind nachfolgende Bereitstellungen auf Android 11-Geräten mit Apply Code Changes Symbol „Codeänderungen anwenden“ oder Apply Changes and Restart Activity Symbol „Änderungen anwenden und Aktivität neu starten“ jetzt deutlich schneller.

Weitere Informationen zum Unterschied zwischen diesen beiden Aktionen finden Sie unter Änderungen anwenden.

Unterstützung für zusätzliche Codeänderungen

Auf Geräten mit Android 11 Developer Preview 3 oder höher können Sie jetzt Methoden hinzufügen und die Änderungen dann in Ihrer laufenden App bereitstellen, indem Sie entweder auf Codeänderungen anwenden Symbol „Codeänderungen anwenden“ oder auf Änderungen anwenden und Aktivität neu starten Symbol „Änderungen anwenden und Aktivität neu starten“ klicken.