Android Studio 3.6 (Februar 2020)

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

Wir möchten uns auch bei allen Community-Beitragenden bedanken, die uns bei dieser Version geholfen haben.

3.6.3 (April 2020)

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

3.6.2 (März 2020)

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

3.6.1 (Februar 2020)

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

Design tools

Diese Version von Android Studio enthält Updates für mehrere Designtools, darunter den Layout-Editor und den Ressourcenmanager.

Split-View und Zoom in Design-Editoren

In der geteilten Ansicht werden sowohl die Design- als auch die Textansicht gleichzeitig angezeigt.

Diese Version enthält die folgenden Aktualisierungen der visuellen Design-Editoren:

  • Design-Editoren wie der Layout-Editor und der Navigationseditor bieten jetzt eine Split-Ansicht, in der Sie gleichzeitig die Design- und die Code-Ansicht Ihrer Benutzeroberfläche sehen können. Rechts oben im Editorfenster befinden sich jetzt drei Schaltflächen Symbole ansehen, mit denen Sie zwischen den Ansichtsoptionen wechseln können:

    • Klicken Sie auf das Symbol Aufteilen Symbol für geteilte Ansicht, um die geteilte Ansicht zu aktivieren.
    • Klicken Sie auf das Symbol Quelle Symbol für die Quellansicht, um die XML-Quellansicht zu aktivieren.
    • Klicken Sie auf das Symbol Design Symbol für die Designansicht, um die Designansicht zu aktivieren.
  • Die Steuerelemente zum Zoomen und Schwenken in den Design-Editoren wurden in ein unverankertes Feld in der unteren rechten Ecke des Editorfensters verschoben.

Weitere Informationen finden Sie unter UI mit Layout-Editor erstellen.

Ressourcentab „Farbauswahl“

Damit Sie Farbressourcenwerte in Ihrer App schnell aktualisieren können, wenn Sie die Farbauswahl in Ihrem XML-Code oder den Designtools verwenden, werden die Farbressourcenwerte jetzt automatisch von der IDE ausgefüllt.

Farbauswahl mit voreingestellten Farbwerten

Resource Manager

Der Ressourcenmanager enthält die folgenden Aktualisierungen:

  • Der Ressourcenmanager unterstützt jetzt die meisten Ressourcentypen.
  • Wenn Sie nach einer Ressource suchen, werden im Resource Manager jetzt Ergebnisse aus allen Projektmodulen angezeigt. Bisher wurden bei Suchanfragen nur Ergebnisse aus dem ausgewählten Modul zurückgegeben.
  • Mit der Filterschaltfläche können Sie Ressourcen aus lokalen abhängigen Modulen, externen Bibliotheken und dem Android-Framework ansehen. Sie können den Filter auch verwenden, um Themenattribute anzuzeigen.
  • Sie können Ressourcen jetzt während des Importvorgangs umbenennen. Klicken Sie dazu in das Textfeld über der Ressource.

Weitere Informationen finden Sie unter UI-Ressourcen Ihrer App mit Resource Manager verwalten.

Aktualisierungen am Android-Gradle-Plug-in

Die aktuelle Version des Android-Gradle-Plug-ins enthält viele Updates, darunter Optimierungen für die Build-Geschwindigkeit, Unterstützung für das Maven-Publishing-Plug-in und Unterstützung für View Binding. Vollständige Versionshinweise

Bindung ansehen

Mit View Binding können Sie einfacher Code schreiben, der mit Ansichten interagiert, indem für jede XML-Layoutdatei eine Binding-Klasse generiert wird. Diese Klassen enthalten direkte Verweise auf alle Ansichten, die eine ID im entsprechenden Layout haben.

Da es findViewById() ersetzt, wird durch die Ansichtsbindung das Risiko von Nullzeiger-Ausnahmen aufgrund einer ungültigen Ansichts-ID eliminiert.

Damit Sie View Binding aktivieren können, müssen Sie das Android Gradle-Plug-in 3.6.0 oder höher verwenden und Folgendes in die build.gradle-Datei jedes Moduls einfügen:

Groovy

  android {
      buildFeatures.viewBinding = true
  }
  

Kotlin

  android {
      buildFeatures.viewBinding = true
  }
  

Änderungen übernehmen

Sie können jetzt eine Klasse hinzufügen und diese Codeänderung in Ihrer laufenden App bereitstellen, indem Sie entweder auf Codeänderungen anwenden oder auf Änderungen anwenden und Aktivität neu starten klicken .

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

Menüoption umgestalten, um Instant Apps zu unterstützen

Sie können Ihr Basismodul jetzt jederzeit nach dem Erstellen Ihres App-Projekts aktivieren. Gehen Sie dazu so vor:

  1. Öffnen Sie den Bereich Project (Projekt), indem Sie in der Menüleiste View > Tool Windows > Project (Ansicht > Tool-Fenster > Projekt) auswählen.
  2. Klicken Sie mit der rechten Maustaste auf Ihr Basismodul, das in der Regel „app“ heißt, und wählen Sie Refactor > Enable Instant Apps Support (Umgestalten > Unterstützung für Instant Apps aktivieren) aus.
  3. Wählen Sie im angezeigten Dialogfeld Ihr Basismodul aus dem Drop-down-Menü aus.
  4. Klicken Sie auf OK.

Hinweis:Die Option, das Basis-App-Modul über den Assistenten Neues Projekt erstellen sofort zu aktivieren, wurde entfernt.

Weitere Informationen

Bytecode von Klassen und Methoden im APK Analyzer deobfuskieren

Wenn Sie den APK Analyzer verwenden, um DEX-Dateien zu prüfen, können Sie den Bytecode von Klassen und Methoden so deobfuskieren:

  1. Wählen Sie in der Menüleiste Build > APK analysieren aus.
  2. Suchen Sie im angezeigten Dialogfeld nach dem APK, das Sie prüfen möchten, und wählen Sie es aus.
  3. Klicken Sie auf Öffnen.
  4. Wählen Sie im APK Analyzer die DEX-Datei aus, die Sie untersuchen möchten.
  5. Laden Sie im DEX-Datei-Viewer die ProGuard-Zuordnungsdatei für die APK hoch, die Sie analysieren.
  6. Klicken Sie mit der rechten Maustaste auf die Klasse oder Methode, die Sie untersuchen möchten, und wählen Sie Bytecode anzeigen aus.

Native Tools

Die folgenden Updates unterstützen die native (C/C++) Entwicklung in Android Studio.

Kotlin-Unterstützung

Die folgenden NDK-Funktionen in Android Studio, die zuvor in Java unterstützt wurden, werden jetzt auch in Kotlin unterstützt:

  • Von einer JNI-Deklaration zur entsprechenden Implementierungsfunktion in C/C++ wechseln. Diese Zuordnung wird angezeigt, wenn Sie den Mauszeiger auf die Markierung für C oder C++ in der Nähe der Zeilennummer in der verwalteten Quellcodedatei bewegen.

  • Automatisch eine Stub-Implementierungsfunktion für eine JNI-Deklaration erstellen. Definieren Sie zuerst die JNI-Deklaration und geben Sie dann „jni“ oder den Methodennamen in die C/C++-Datei ein, um sie zu aktivieren.

  • Nicht verwendete native Implementierungsfunktionen werden im Quellcode als Warnung hervorgehoben. JNI-Deklarationen ohne Implementierung werden ebenfalls als Fehler hervorgehoben.

  • Wenn Sie eine Funktion der nativen Implementierung umbenennen (refaktorieren), werden alle entsprechenden JNI-Deklarationen aktualisiert. Benennen Sie eine JNI-Deklaration um, um die native Implementierungsfunktion zu aktualisieren.

  • Signaturprüfung für implizit gebundene JNI-Implementierungen.

Weitere JNI-Verbesserungen

Der Code-Editor in Android Studio unterstützt jetzt einen reibungsloseren JNI-Entwicklungs-Workflow, einschließlich verbesserter Typ-Hinweise, automatischer Vervollständigung, Prüfungen und Code-Refactoring.

APK-Neuladen für native Bibliotheken {:#3.6-reload-apk}

Sie müssen kein neues Projekt mehr erstellen, wenn das APK in Ihrem Projekt außerhalb der IDE aktualisiert wird. Android Studio erkennt Änderungen am APK und bietet Ihnen die Möglichkeit, es neu zu importieren.

Nur Kotlin-APK-Quellen anhängen

Beim Erstellen von Profilen und Beheben von Fehlern in vorgefertigten APKs können jetzt externe APK-Quellen angehängt werden, die nur Kotlin enthalten. Weitere Informationen finden Sie unter Kotlin-/Java-Quellen anhängen.

Leckerkennung im Memory Profiler

Wenn Sie einen Heap-Dump im Memory Profiler analysieren, können Sie jetzt Profiling-Daten filtern, die in Android Studio möglicherweise auf Speicherlecks für Activity- und Fragment-Instanzen in Ihrer App hinweisen.

Der Filter zeigt unter anderem die folgenden Datentypen:

  • Activity-Instanzen, die zerstört wurden, auf die aber weiterhin verwiesen wird.
  • Fragment-Instanzen, die keine gültige FragmentManager haben, auf die aber weiterhin verwiesen wird.

Nur Kotlin-APK-Quellen anhängen

Beim Erstellen von Profilen und Beheben von Fehlern in vorgefertigten APKs können jetzt externe APK-Quellen angehängt werden, die nur Kotlin enthalten. Weitere Informationen finden Sie unter Kotlin-/Java-Quellen anhängen.

Leckerkennung im Memory Profiler

Wenn Sie einen Heap-Dump im Memory Profiler analysieren, können Sie jetzt Profiling-Daten filtern, die in Android Studio möglicherweise auf Speicherlecks für Activity- und Fragment-Instanzen in Ihrer App hinweisen.

Der Filter zeigt unter anderem die folgenden Datentypen:

  • Activity-Instanzen, die zerstört wurden, auf die aber weiterhin verwiesen wird.
  • Fragment-Instanzen, die keine gültige FragmentManager haben, auf die aber weiterhin verwiesen wird.

In bestimmten Situationen, z. B. den folgenden, kann der Filter fälschlicherweise positive Ergebnisse liefern:

  • Ein Fragment wurde erstellt, aber noch nicht verwendet.
  • Ein Fragment wird im Cache gespeichert, aber nicht als Teil eines FragmentTransaction.

Wenn Sie diese Funktion nutzen möchten, müssen Sie zuerst einen Heap-Dump erfassen oder eine Heap-Dump-Datei in Android Studio importieren. Wenn Sie die Fragmente und Aktivitäten sehen möchten, bei denen möglicherweise Speicherlecks auftreten, setzen Sie im Bereich „Heap-Dump“ des Memory Profiler ein Häkchen in das Kästchen Activity/Fragment Leaks.

Profiler: Erkennung von Speicherlecks

Heap-Dump nach Speicherlecks filtern

Emulatoren

Mit Android Studio 3.6 können Sie die Vorteile mehrerer Updates nutzen, die im Android Emulator 29.2.7 und höher enthalten sind.

Verbesserte Unterstützung von Standorten

Der Android-Emulator 29.2.7 und höher bietet zusätzliche Unterstützung für die Emulation von GPS-Koordinaten und Routeninformationen. Wenn Sie die erweiterten Steuerelemente für Emulatoren öffnen, sind die Optionen auf dem Tab „Standort“ jetzt in zwei Tabs unterteilt: Einzelne Punkte und Routen.

Einzelne Punkte

Auf dem Tab Einzelne Punkte können Sie in der Google Maps-Webansicht nach Sehenswürdigkeiten suchen, genau wie in Google Maps auf einem Smartphone oder in einem Browser. Wenn Sie auf der Karte nach einem Ort suchen oder darauf klicken, können Sie ihn speichern, indem Sie unten auf der Karte „Punkt speichern“ auswählen. Alle gespeicherten Orte werden rechts im Fenster Erweiterte Einstellungen aufgeführt.

Wenn Sie den Standort des Emulators auf den Standort festlegen möchten, den Sie auf der Karte ausgewählt haben, klicken Sie rechts unten im Fenster Erweiterte Steuerelemente auf die Schaltfläche Standort festlegen.

Tab „Einzelne Punkte“ in den erweiterten Emulator-Steuerelementen..

Routen

Ähnlich wie auf dem Tab Einzelne Punkte wird auf dem Tab Routen eine Google Maps-Webansicht angezeigt, mit der Sie eine Route zwischen zwei oder mehr Orten erstellen können. So erstellen und speichern Sie eine Route:

  1. Suchen Sie in der Kartenansicht im Textfeld nach dem ersten Ziel Ihrer Route.
  2. Wählen Sie den Ort in den Suchergebnissen aus.
  3. Wählen Sie die Schaltfläche Navigieren aus.
  4. Wählen Sie den Startpunkt Ihrer Route auf der Karte aus.
  5. Optional: Klicken Sie auf Ziel hinzufügen, um Ihrer Route weitere Zwischenstopps hinzuzufügen.
  6. Klicken Sie in der Kartenansicht auf Route speichern, um die Route zu speichern.
  7. Geben Sie einen Namen für die Route ein und klicken Sie auf Speichern.

Wenn Sie simulieren möchten, dass der Emulator der gespeicherten Route folgt, wählen Sie die Route aus der Liste der Gespeicherten Routen aus und klicken Sie unten rechts im Fenster Erweiterte Steuerelemente auf Route abspielen. Wenn Sie die Simulation beenden möchten, klicken Sie auf Route beenden.

Tab „Routen“ in den erweiterten Emulator-Steuerelementen..

Wenn Sie den Emulator kontinuierlich entlang der angegebenen Route simulieren möchten, aktivieren Sie den Schalter neben Wiedergabe wiederholen. Wenn Sie ändern möchten, wie schnell der Emulator der angegebenen Route folgt, wählen Sie eine Option aus dem Drop-down-Menü Wiedergabegeschwindigkeit aus.

Unterstützung für mehrere Displays

Mit dem Android-Emulator können Sie Ihre App jetzt auf mehreren Bildschirmen bereitstellen, die anpassbare Abmessungen unterstützen. So können Sie Apps testen, die Mehrfenster und Mehrfachanzeige unterstützen. Während ein virtuelles Gerät ausgeführt wird, können Sie bis zu zwei zusätzliche Displays hinzufügen:

  1. Öffnen Sie die erweiterten Einstellungen und rufen Sie den Tab Displays auf.

  2. Klicken Sie auf Zweiten Bildschirm hinzufügen, um einen weiteren Bildschirm hinzuzufügen.

  3. Führen Sie im Drop-down-Menü unter Sekundäre Displays einen der folgenden Schritte aus:

  4. Wählen Sie eines der voreingestellten Seitenverhältnisse aus.

  5. Wählen Sie Benutzerdefiniert aus und legen Sie die Höhe, Breite und DPI für Ihr benutzerdefiniertes Display fest.

  6. Optional: Klicken Sie auf Zweites Display hinzufügen, um ein drittes Display hinzuzufügen.

  7. Klicken Sie auf Änderungen übernehmen, um die angegebenen Displays dem laufenden virtuellen Gerät hinzuzufügen.

Auf dem Tab „Emulator Extended Controls Display“ können Sie mehrere Displays hinzufügen.

Neue virtuelle Geräte und Projektvorlagen für Android Automotive OS

Wenn Sie in Android Studio ein neues Projekt erstellen, können Sie jetzt im Assistenten Create New Project auf dem Tab Automotive eine von drei Vorlagen auswählen: No Activity, Media service und Messaging service. Bei bestehenden Projekten können Sie Unterstützung für Android Automotive-Geräte hinzufügen, indem Sie in der Menüleiste File > New > New Module auswählen und dann Automotive Module. Der Assistent Create New Module (Neues Modul erstellen) führt Sie dann durch die Erstellung eines neuen Moduls mit einer der Android Automotive-Projektvorlagen.

Wählen Sie eine Android Automotive-Projektvorlage aus..

Außerdem können Sie jetzt ein Android Virtual Device (AVD) für Android Automotive OS-Geräte erstellen, indem Sie im Assistenten Virtual Device Configuration (Konfiguration des virtuellen Geräts) auf dem Tab Automotive (Automotive) eine der folgenden Optionen auswählen.

  1. Polestar 2: Erstellen Sie ein AVD, das die Head-Unit des Polestar 2 emuliert.
  2. Automotive (1024p landscape): Erstellen Sie ein AVD für generische Android Automotive-Infotainmentsysteme mit 1024 × 768 Pixeln.

Auswahl eines virtuellen Android Automotive-Geräts.

Fortsetzbare SDK-Downloads

Wenn Sie SDK-Komponenten und ‑Tools mit dem SDK Manager herunterladen, können Sie in Android Studio jetzt Downloads fortsetzen, die unterbrochen wurden (z. B. aufgrund eines Netzwerkproblems), anstatt den Download von Anfang an neu zu starten. Diese Verbesserung ist besonders hilfreich bei großen Downloads wie dem Android-Emulator oder System-Images, wenn die Internetverbindung unzuverlässig ist.

Wenn Sie außerdem eine SDK-Downloadaufgabe im Hintergrund ausführen, können Sie den Download jetzt über die Steuerelemente in der Statusleiste pausieren oder fortsetzen.

In der Statusleiste wird eine Aufgabe zum Herunterladen im Hintergrund mit neuen Steuerelementen angezeigt, mit denen Sie den Download pausieren oder fortsetzen können.

In der Statusleiste wird ein Hintergrund-Downloadvorgang mit neuen Steuerelementen angezeigt, mit denen Sie den Download pausieren oder fortsetzen können.

Win32-Unterstützung eingestellt

Die 32-Bit-Version von Android Studio für Windows wird nach Dezember 2019 nicht mehr aktualisiert und nach Dezember 2020 nicht mehr unterstützt. Sie können Android Studio weiterhin verwenden. Wenn Sie jedoch zusätzliche Updates erhalten möchten, müssen Sie ein Upgrade Ihrer Workstation auf eine 64-Bit-Version von Windows durchführen.

Weitere Informationen finden Sie im Blog zur Einstellung von Windows 32-Bit.

Neue Option zur Optimierung der Gradle-Synchronisierungszeit

In früheren Versionen hat Android Studio die Liste aller Gradle-Aufgaben während der Gradle-Synchronisierung abgerufen. Bei großen Projekten kann das Abrufen der Aufgabenliste zu langsamen Synchronisierungszeiten führen.

Um die Leistung der Gradle-Synchronisierung zu verbessern, gehen Sie zu Datei > Einstellungen > Experimentell und wählen Sie „Gradle-Aufgabenliste während der Gradle-Synchronisierung nicht erstellen“ aus.

Wenn Sie diese Option aktivieren, wird die Aufgabenliste während der Synchronisierung nicht erstellt. Dadurch kann die Gradle-Synchronisierung schneller abgeschlossen werden und die Reaktionsfähigkeit der Benutzeroberfläche wird verbessert. Wenn die IDE das Erstellen der Aufgabenliste überspringt, sind die Aufgabenlisten im Gradle-Bereich leer und die automatische Vervollständigung von Aufgabennamen in Build-Dateien funktioniert nicht.

Neuer Ort zum Ein- und Ausschalten des Gradle-Offlinemodus

Wenn Sie den Offlinemodus von Gradle aktivieren oder deaktivieren möchten, wählen Sie zuerst in der Menüleiste View > Tool Windows > Gradle aus. Klicken Sie dann oben im Gradle-Fenster auf Offline-Modus ein/aus Schaltfläche „Offline“ im Gradle-Bereich..

IntelliJ IDEA 2019.2

Die Android Studio-IDE wurde mit Verbesserungen aus IntelliJ IDEA durch die Version 2019.2 aktualisiert.

Weitere Informationen zu den Verbesserungen aus anderen IntelliJ-Versionen, die kumulativ in Version 2019.2 enthalten sind, finden Sie auf den folgenden Seiten:

Community-Beitragende

Vielen Dank an alle Community-Mitglieder, die uns geholfen haben, Fehler und andere Möglichkeiten zur Verbesserung von Android Studio 3.6 zu finden. Wir möchten uns insbesondere bei den folgenden Personen bedanken, die Fehler gemeldet haben:

  • Albert Lo
  • Alexey Rott
  • Andrea Leganza
  • Benedikt Kolb
  • César Puerta
  • Curtis Kroetsch
  • Damian Wieczorek
  • Dan Lew
  • David Burström
  • Deepanshu
  • Egor Andreevici
  • Eli Graber
  • Emin Kokalari
  • Evan Tatarka
  • Frantisek Nagy
  • Greg Moens
  • Hannes Achleitner
  • Hans Petter Eide
  • Henning Bunk
  • Hugo Visser
  • Igor Escodro
  • Iñaki Villar
  • Javentira Lienata
  • Joe Rogers
  • Kristoffer Danielsson
  • Liran Barsisa
  • Louis CAD
  • Lóránt Pintér
  • Łukasz Wasylkowski
  • Luke Fielke
  • Malvin Sutanto
  • Masatoshi Kubode
  • Mathew Winters
  • Michael Bailey
  • Michał Górny
  • Mihai Neacsu
  • Mike Scamell
  • Monte Creasor
  • Nelson Osacky
  • Nelson Osacky
  • Nick Firmani
  • Nicklas Ansman Giertz
  • Niclas Kron
  • Nicolás Lichtmaier
  • Niek Haarman
  • Niels van Hove
  • Niklas Baudy
  • Renato Goncalves
  • Roar Grønmo
  • Ruslan Baratov
  • Sinan Kozak
  • Slawomir Czerwinski
  • Stefan Wolf
  • Stephen D'Amico
  • Tao Wang
  • Tomas Chladek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • Warren He
  • Yenchi Lin
  • Zac Sweers