Android Studio 4.1 (August 2020)

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

4.1.3 (März 2021)

Dieses kleinere Update enthält verschiedene Fehlerkorrekturen. Eine Liste der wichtigsten Fehlerkorrekturen finden Sie im entsprechenden Beitrag im Blog „Release Updates“.

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 Datenbankprüftool können Sie Ihre Datenbanken in der laufenden App prüfen, abfragen und ändern. Starten Sie mit der Bereitstellung Ihrer App auf einem Gerät mit API-Ebene 26 oder höher und wählen Sie in der Menüleiste Ansicht > Toolfenster > Datenbankprüftool aus.

Weitere Informationen finden Sie unter Datenbank mit dem Datenbankprüftool beheben.

Android-Emulator direkt in Android Studio ausführen

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

Der Emulator wird in einem Toolfenster in Android Studio gestartet.

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

TensorFlow Lite-Modelle verwenden

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

Unterstützte Modelle

Die aktuelle Implementierung der ML-Modellbindung unterstützt Modelle für die Bildklassifizierung und den Stiltransfer, sofern sie mit Metadaten erweitert sind. Im Laufe der Zeit wird die Unterstützung auf andere Problembereiche ausgeweitet, z. B. Objekterkennung, Bildsegmentierung und Textklassifizierung.

Im TensorFlow Hub finden Sie eine breite Palette vortrainierter Modelle mit Metadaten. Sie können einem TensorFlow Lite-Modell auch selbst Metadaten hinzufügen, wie unter Metadaten zum TensorFlow Lite-Modell 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 > Sonstiges > TensorFlow Lite-Modell.
  2. Wählen Sie die .tflite-Modelldatei 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/ abgelegt. Wenn das Verzeichnis nicht vorhanden ist, wird es von Android Studio erstellt.

TensorFlow Lite-Modell importieren

Modellmetadaten und -nutzung ansehen

Wenn Sie die Details für ein importiertes Modell aufrufen und eine Anleitung zu dessen Verwendung in Ihrer App erhalten möchten, doppelklicken Sie auf die Modelldatei in Ihrem Projekt, um die Modellansichtsseite zu öffnen. Sie enthält folgende Informationen:

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

Hier ist ein Beispiel mit mobilenet_v1_0.25_160_quantized.tflite:

Wie das Beispiel zeigt, erstellt Android Studio eine Klasse namens MobilenetV1025160Quantized zur Interaktion mit dem Modell.

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

Bekannte Probleme und Behelfslösungen

  • Die Unterstützung von TensorFlow Lite-Modellen für andere Problembereiche als Bildklassifizierung und Stiltransfer ist derzeit eingeschränkt. Der Import sollte zwar problemlos funktionieren, einige Modellinputs und/oder ‑outputs werden jedoch nicht durch nutzerfreundliche Typen, sondern durch TensorBuffers dargestellt. Bei Modellen ohne Metadaten sind alle Modelleingaben und ‑ausgaben TensorBuffers.
  • Modelle mit Eingabe- und Ausgabedatentypen, die sich von DataType.UINT8 oder DataType.FLOAT32 unterscheiden, werden nicht unterstützt.

Diese Funktion befindet sich noch in der Entwicklungsphase. Bitte gib uns Feedback oder melde 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 ‑entnahmen aus nativem Code erfassen und kumulative Statistiken zu nativen Objekten prüfen.

Eine Aufzeichnung im Native Memory Profiler

Weitere Informationen zum Native Memory Profiler finden Sie unter Arbeitsspeichernutzung Ihrer App mit dem Memory Profiler prüfen.

Bekannte Probleme und Problemumgehungen

Der native Speicher-Profiler in Android Studio 4.1 funktioniert nicht auf Geräten mit Android 11. Die Unterstützung für die Profilerstellung für Android 11-Geräte ist derzeit in der Vorabversion verfügbar.

Seit der ersten 4.1-Version ist das App-Start-Profiling deaktiviert. Diese Option wird in einer künftigen Version aktiviert.

Als Problemumgehung können Sie den eigenständigen Perfetto-Befehlszeilen-Profiler verwenden, um Startprofile zu erfassen.

Benutzeroberfläche für System-Traces: Einfachere Auswahl, neuer Analyse-Tab und mehr Daten zum Frame-Rendering

Die Benutzeroberfläche für System-Traces im Android Studio-Profiler wurde durch die folgenden Verbesserungen optimiert:

  • Rechteckauswahl:Im Bereich Threads können Sie jetzt mit der Maus ein Rechteck ziehen, um einen Bereich auszuwählen. Wenn Sie hineinzoomen möchten, klicken Sie oben rechts auf die Schaltfläche Auf Auswahl zoomen Schaltfläche „Auf Auswahl zoomen“ für Profile oder verwenden Sie die Tastenkombination M. Wenn Sie ähnliche Threads nebeneinander ziehen und ablegen, können Sie mehrere Threads auswählen, um sie alle gleichzeitig zu prüfen. Beispielsweise können Sie eine Analyse auf mehreren Worker-Threads ausführen.

  • Tab „Zusammenfassung“:Auf dem neuen Tab Zusammenfassung im Bereich Analyse werden folgende Informationen angezeigt:

    • Aggregierte Statistiken für alle Vorkommnisse eines bestimmten Ereignisses, z. B. die Häufigkeit und die minimale/maximale Dauer.

    • Trace-Ereignisstatistiken für das ausgewählte Ereignis.

    • Daten zur Verteilung des Threadstatus.

    • Die am längsten andauernden Vorkommnisse des ausgewählten Trace-Ereignisses.

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

  • Displaydaten:Im Bereich Display können Sie mithilfe neuer Zeitachsen für SurfaceFlinger und VSYNC Probleme beim Rendern der Benutzeroberfläche Ihrer App untersuchen.

Eine grundlegende Anleitung zum Erfassen eines System-Traces finden Sie im Abschnitt Traces erfassen des Artikels CPU-Aktivität mit dem CPU-Profiler prüfen.

Eigenständige Profiler jetzt verfügbar

Mit den neuen eigenständigen Profilern ist es jetzt möglich, Profile für Ihre App zu erstellen, ohne die vollständige Android Studio-IDE ausführen zu müssen.

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

Unterstützung für die Navigation mit dem Dreipunkt-Menü

IDE-Waste-Aktionen für die Navigation zu Dagger-Verbrauchern und -Anbietern

In Android Studio können Sie jetzt einfacher zwischen Dagger-bezogenem Code wechseln, da neue Ränderaktionen verfügbar sind und die Unterstützung im Fenster Verwendungsnachweise finden erweitert wurde.

  • Neue Aktionen für den Ziffernblock:Für Projekte, in denen Dagger verwendet wird, bietet die IDE Aktionen für den Ziffernblock, mit denen Sie zwischen dem mit Dagger annotierten Code navigieren können. Wenn Sie beispielsweise neben einer Methode, die einen bestimmten Typ verwendet, auf die gutter-Aktion klicken, werden Sie zum Anbieter dieses Typs weitergeleitet. Wenn Sie dagegen auf die Aktion  im Bereich zwischen den Spalten klicken, gelangen Sie zu der Stelle, an der ein Typ als Abhängigkeit verwendet wird.

  • Knoten „Nutzungen suchen“:Wenn Sie Nutzungen suchen für einen Anbieter eines bestimmten Typs aufrufen, enthält das Fenster Suchen jetzt den Knoten Abhängigkeitsverbraucher, in dem Verbraucher dieses Typs aufgeführt sind. Wenn Sie diese Aktion dagegen für einen Nutzer einer Dagger-eingebetteten Abhängigkeit aufrufen, wird im Fenster Suchen der Anbieter dieser Abhängigkeit angezeigt.

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

Animation: In Android Studio ein Projekt mit neuen Material Design-Eigenschaften erstellen

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

  • MDC: Projekte sind von com.google.android.material:material in build.gradle abhängig. Für Basis-App-Designs werden Theme.MaterialComponents.*-Übergeordnete verwendet und die aktualisierten MDC-Farb- und „An“-Attribute überschrieben.

  • Farbressourcen: Für Farbressourcen in colors.xml werden Literalnamen verwendet (z. B. purple_500 anstelle von colorPrimary).

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

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

  • Design-Attribute: Farbressourcen werden in Layouts und Stilen als Designattribute (z. B. ?attr/colorPrimary) referenziert, um hartcodierte Farben zu vermeiden.

IntelliJ IDEA 2020.1

Die Kern-IDE von Android Studio wurde mit Verbesserungen von IntelliJ IDEA bis Version 2020.1 aktualisiert, darunter ein neues Commit-Fenster, das Versionsverwaltungsvorgänge ermöglicht, und einen neuen Zen-Modus, der über Ansicht > Darstellung > Ablenkungsfreie Modus starten ein- und ausgeschaltet 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 aktuellen 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 aus 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 mit einer Reihe von Fehlerkorrekturen zur Verbesserung der Kotlin-Hervorhebung, der Prüfungen und der Codevervollständigung. Weitere Informationen finden Sie im Kotlin-Änderungsprotokoll 1.3.72.

Vorschau der benutzerdefinierten Ansicht

Wenn Sie eine benutzerdefinierte Ansicht erstellen (z. B. durch Erweiterung der Klasse View oder Button), wird Ihnen in Android Studio jetzt eine Vorschau Ihrer benutzerdefinierten Ansicht angezeigt. Über das Drop-down-Menü in der Symbolleiste können Sie zwischen mehreren benutzerdefinierten Ansichten wechseln. Sie können auch auf die Schaltflächen klicken, um den Text vertikal oder horizontal an den Inhalt anzupassen.

Benutzerdefinierte Ansichten in der IDE in der Vorschau ansehen

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

Symbolication für native Absturzberichte

Wenn ein Absturz oder ANR im nativen Code auftritt, generiert das System einen Stack-Trace. 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 symbolisch dargestellt werden, um die Maschinenadressen zurück in menschenlesbare Funktionsnamen umzuwandeln.

Wenn deine App oder dein Spiel mit nativem Code wie C++ entwickelt wurde, kannst du jetzt Debugging-Symboldateien für jede Version der App in die Play Console hochladen. Die Play Console verwendet diese Debugging-Symboldateien zur Symbolication der Stacktraces deiner App, was die Analyse von Abstürzen und ANRs erleichtert. Informationen zum Hochladen von Dateien mit Symbolen zum Debuggen finden Sie unter Unterstützung für native Abstürze.

Änderungen übernehmen

Damit du bei der Iteration deiner App produktiver sein kannst, haben wir die folgenden Verbesserungen an „Änderungen übernehmen“ für Geräte mit Android 11-Entwicklervorschau 3 oder höher vorgenommen:

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 die Anwendung zu installieren. Nach einem ersten Deployment sind nachfolgende Deployments auf Android 11-Geräten mit Codeänderungen anwenden Symbol „Codeänderungen anwenden“ oder Änderungen anwenden und Aktivität neu starten Symbol „Änderungen anwenden und neu starten“ jetzt deutlich schneller.

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

Unterstützung zusätzlicher Codeänderungen

Auf Geräten mit der Android 11-Entwicklervorschau 3 oder höher können Sie jetzt Methoden hinzufügen und diese Änderungen dann in Ihrer laufenden App implementieren. Klicken Sie dazu entweder auf Codeänderungen anwenden Symbol „Codeänderungen anwenden“ oder auf Änderungen anwenden und Aktivität neu starten Symbol „Änderungen anwenden und neu starten“.