Android Studio 3.6 (Februar 2020)

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

Außerdem möchten wir uns bei allen Beitragenden der Community bedanken, die bei dieser Version geholfen haben.

3.6.3 (April 2020)

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

3.6.2 (März 2020)

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

3.6.1 (Februar 2020)

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

Design tools

Diese Version von Android Studio enthält Updates für verschiedene Designtools, darunter den Layout Editor und Resource Manager.

Designeditoren heranzoomen und die Ansicht teilen

Die geteilte Ansicht zeigt die Design- und die Textansicht gleichzeitig an.

Diese Version enthält die folgenden Aktualisierungen der Editoren für das visuelle Design:

  • Designeditoren wie der Layout-Editor und der Navigationseditor bieten jetzt eine geteilte Ansicht, in der Sie die Designansicht und die Codeansicht Ihrer UI gleichzeitig sehen können. Oben rechts im Editorfenster finden Sie jetzt drei Schaltflächen Symbole anzeigen, mit denen Sie zwischen den Anzeigeoptionen wechseln können:

    • Um die geteilte Ansicht zu aktivieren, klicken Sie auf das Symbol Teilen Symbol für geteilte Ansicht.
    • Klicken Sie auf das Symbol Quelle Symbol für die Quellansicht, um die XML-Quellansicht zu aktivieren.
    • Klicken Sie auf das Designsymbol Symbol für die Designansicht, um die Designansicht zu aktivieren.
  • Die Steuerelemente zum Zoomen und Schwenken in Designeditoren wurden in ein unverankertes Steuerfeld unten rechts im Editorfenster verschoben.

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

Ressourcenregisterkarte für Farbauswahl

Damit Sie die Werte für Farbressourcen in Ihrer App schnell aktualisieren können, wenn Sie die Farbauswahl in Ihrer XML-Datei oder die Designtools verwenden, füllt die IDE die Werte für die Farbressourcen jetzt für Sie aus.

Farbauswahl mit ausgefüllten Farbwerten

Resource Manager

Der Resource Manager enthält die folgenden Aktualisierungen:

  • Resource Manager unterstützt jetzt die meisten Ressourcentypen.
  • Bei der Suche nach einer Ressource zeigt Resource Manager jetzt Ergebnisse aus allen Projektmodulen an. Bisher wurden bei der Suche nur Ergebnisse des ausgewählten Moduls zurückgegeben.
  • Mit der Schaltfläche zum Filtern können Sie Ressourcen aus lokalen abhängigen Modulen, externen Bibliotheken und dem Android-Framework ansehen. Sie können den Filter auch verwenden, um Designattribute 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 Anwendung mit Resource Manager verwalten.

Updates für das Android-Gradle-Plug-in

Die neueste Version des Android-Gradle-Plug-ins enthält viele Updates, darunter Optimierungen der Build-Geschwindigkeit, Unterstützung für das Maven-Veröffentlichungs-Plug-in und Unterstützung für View Binding. Weitere Informationen finden Sie in den vollständigen Versionshinweisen.

Bindung ansehen

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

Da sie findViewById() ersetzt, beseitigt die Ansichtsbindung das Risiko von Nullzeigerausnahmen aufgrund einer ungültigen Ansichts-ID.

Zum Aktivieren der Ansichtsbindung müssen Sie das Android-Gradle-Plug-in 3.6.0 oder höher verwenden und in die build.gradle-Datei jedes Moduls Folgendes einfügen:

Groovig

  android {
      buildFeatures.viewBinding = true
  }
  

Kotlin

  android {
      buildFeatures.viewBinding = true
  }
  

Änderungen übernehmen

Sie können jetzt eine Klasse hinzufügen und diese Codeänderung dann in der laufenden Anwendung bereitstellen. Klicken Sie dazu entweder auf Codeänderungen anwenden oder auf Änderungen übernehmen und Aktivität neu starten.

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

Menüoption zur Aktivierung der Unterstützung von Instant Apps refaktoriert

Sie können Ihr Basismodul jetzt jederzeit so aktivieren, nachdem Sie Ihr App-Projekt erstellt haben:

  1. Öffnen Sie den Bereich Projekt, indem Sie in der Menüleiste Ansicht > Toolfenster > Projekt auswählen.
  2. Klicken Sie mit der rechten Maustaste auf Ihr Basismodul, das in der Regel "app" genannt wird, und wählen Sie Refactor > Instant Apps Support aktivieren aus.
  3. Wählen Sie im angezeigten Dialogfeld Ihr Basismodul aus dem Dropdown-Menü aus.
  4. Klicke auf OK.

Hinweis: Die Option zur sofortigen Aktivierung des Basisanwendungsmoduls im Assistenten Neues Projekt erstellen wurde entfernt.

Weitere Informationen findest du unter Übersicht über Google Play Instant.

Offenlegung der Klasse und Methode des Bytecodes in APK Analyzer

Wenn Sie DEX-Dateien mit dem APK Analyzer untersuchen, können Sie den Bytecode der Klasse und der Methode so offenlegen:

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

Native Tools

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

Kotlin-Unterstützung

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

  • Wechseln Sie von einer JNI-Deklaration zur entsprechenden Implementierungsfunktion in C/C++. Sie sehen diese Zuordnung, indem Sie den Mauszeiger auf die C- oder C++-Artikelmarkierung in der Nähe der Zeilennummer in der verwalteten Quellcodedatei bewegen.

  • Erstellen Sie automatisch eine Stub-Implementierungsfunktion für eine JNI-Deklaration. Definieren Sie zuerst die JNI-Deklaration und geben Sie dann zum Aktivieren „jni“ oder den Methodennamen in die C/C++-Datei ein.

  • Nicht verwendete native Implementierungsfunktionen werden im Quellcode als Warnung hervorgehoben. JNI-Deklarationen mit fehlenden Implementierungen werden ebenfalls als Fehler markiert.

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

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

Weitere JNI-Verbesserungen

Der Code-Editor in Android Studio unterstützt jetzt einen nahtloseren JNI-Entwicklungsworkflow, einschließlich verbesserter Typhinweise, automatischer Vervollständigung, Inspektionen und Code-Refaktorierung.

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 im APK und bietet dir die Möglichkeit, es noch einmal zu importieren.

Nur Kotlin-basierte APK-Quellen anhängen

Es ist jetzt möglich, externe APK-Quellen, die ausschließlich Kotlin enthalten, anzuhängen, wenn Sie für vordefinierte APKs Profile erstellen und Fehler beheben. Weitere Informationen finden Sie unter Kotlin-/Java-Quellen anhängen.

Speicherleck-Erkennung im Speicher-Profiler

Beim Analysieren eines Heap-Dumps im Speicher-Profiler können Sie jetzt Profildaten filtern, von denen Android Studio annimmt, dass sie auf Speicherlecks für Activity- und Fragment-Instanzen in Ihrer App hindeuten.

Der Filter zeigt folgende Datentypen an:

  • Activity-Instanzen, die gelöscht wurden, aber noch referenziert werden
  • Fragment-Instanzen, die keinen gültigen FragmentManager haben, aber noch referenziert werden.

Nur Kotlin-basierte APK-Quellen anhängen

Es ist jetzt möglich, externe APK-Quellen, die ausschließlich Kotlin enthalten, anzuhängen, wenn Sie für vordefinierte APKs Profile erstellen und Fehler beheben. Weitere Informationen finden Sie unter Kotlin-/Java-Quellen anhängen.

Speicherleck-Erkennung im Speicher-Profiler

Beim Analysieren eines Heap-Dumps im Speicher-Profiler können Sie jetzt Profildaten filtern, von denen Android Studio annimmt, dass sie auf Speicherlecks für Activity- und Fragment-Instanzen in Ihrer App hindeuten.

Der Filter zeigt folgende Datentypen an:

  • Activity-Instanzen, die gelöscht wurden, aber noch referenziert werden
  • Fragment-Instanzen, die keinen gültigen FragmentManager haben, aber noch referenziert werden.

In bestimmten Situationen, wie z. B. in den folgenden, kann der Filter falsch positive Ergebnisse liefern:

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

Wenn Sie dieses Feature verwenden möchten, müssen Sie zuerst einen Heap-Dump erfassen oder eine Heap-Dump-Datei in Android Studio importieren. Klicken Sie im Heap-Dump-Bereich des Speicher-Profilers auf das Kästchen Aktivitäts-/Fragmentlecks, um sich die Fragmente und Aktivitäten anzeigen zu lassen, die möglicherweise Speicherlecks verursachen.

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, wie unten beschrieben.

Verbesserte Standortunterstützung

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 des Emulators öffnen, sind die Optionen auf dem Tab „Standort“ jetzt auf zwei Tabs angeordnet: Einzelne Punkte und Routen.

Einzelne Punkte

Auf dem Tab Einzelne Punkte können Sie die Google Maps WebView verwenden, um nach POIs zu suchen, so als würden Sie Google Maps auf einem Smartphone oder in einem Browser verwenden. Wenn Sie auf der Karte nach einem Ort suchen oder darauf klicken, können Sie den Ort speichern, indem Sie unten auf der Karte „Punkt speichern“ auswählen. Alle deine gespeicherten Orte werden auf der rechten Seite des Fensters Erweiterte Steuerelemente aufgeführt.

Wenn Sie die Position der Emulatoren 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 „Einzelpunkte“ in der erweiterten Steuerung des Emulators..

Routen

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

  1. Verwenden Sie in der Kartenansicht das Textfeld, um nach dem ersten Ziel Ihrer Route zu suchen.
  2. Wählen Sie den Standort aus den Suchergebnissen aus.
  3. Klicken Sie auf die Schaltfläche Navigation.
  4. Wählen Sie auf der Karte den Startpunkt Ihrer Route aus.
  5. Optional: Klicken Sie auf Ziel hinzufügen, um weitere Zwischenstopps für die Route 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 den Emulator simulieren möchten, der der gespeicherten Route folgt, wählen Sie die Route in der Liste Gespeicherte Routen aus und klicken unten rechts im Fenster Erweiterte Steuerelemente auf Route abspielen. Um die Simulation zu beenden, klicken Sie auf Route stoppen.

Tab „Routen“ in der erweiterten Steuerung des Emulators..

Wenn Sie den Emulator kontinuierlich gemäß der angegebenen Route simulieren möchten, aktivieren Sie den Schalter neben Wiederholte Wiedergabe. 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.

Multi-Display-Unterstützung

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

  1. Öffnen Sie die erweiterten Steuerelemente und dann den Tab Displays (Anzeigen).

  2. Wenn Sie eine weitere Anzeige hinzufügen möchten, klicken Sie auf Sekundären Bildschirm hinzufügen.

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

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

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

  6. Optional: Klicken Sie auf Sekundären Bildschirm hinzufügen, um einen dritten Bildschirm hinzuzufügen.

  7. Klicken Sie auf Änderungen anwenden, um die angegebenen Bildschirme dem aktiven virtuellen Gerät hinzuzufügen.

Mehrere Bildschirme hinzufügen: Tab „Anzeige“ für erweiterte Steuerelemente für Emulator

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

Wenn Sie mit Android Studio ein neues Projekt erstellen, stehen Ihnen jetzt auf dem Tab Automotive im Assistenten Neues Projekt erstellen drei Vorlagen zur Auswahl: Keine Aktivität, Mediendienst und Messaging-Dienst. Bei vorhandenen Projekten können Sie Unterstützung für Android Automotive-Geräte hinzufügen, indem Sie in der Menüleiste File > New > New Module und dann Automotive Module auswählen. Der Assistent Neues Modul erstellen führt Sie dann durch die Erstellung eines neuen Moduls mithilfe einer der Android Automotive-Projektvorlagen.

Android Automotive-Projektvorlage auswählen.

Außerdem kannst du jetzt ein virtuelles Android-Gerät (Android Virtual Device, AVD) für Android Automotive OS-Geräte erstellen. Wähle dazu im Assistenten für die Konfiguration virtueller Geräte auf dem Tab Automotive eine der folgenden Optionen aus.

  1. Polestar 2: Erstellen Sie ein AVD, das das Polestar 2-Hauptgerät emuliert.
  2. Automotive (1024p Querformat): Erstellen Sie einen AVD für generische Android Automotive-Haupteinheiten mit 1024 x 768 Pixeln.

Ein virtuelles Android Automotive-Gerät auswählen.

Fortsetzbare SDK-Downloads

Wenn du SDK-Komponenten und -Tools mit dem SDK-Manager herunterlädst, kannst du in Android Studio jetzt Downloads fortsetzen, die unterbrochen wurden (z. B. aufgrund eines Netzwerkproblems), anstatt den Download noch einmal von vorn zu starten. Diese Verbesserung ist besonders hilfreich bei großen Downloads wie dem Android-Emulator oder System-Images, bei denen die Internetverbindung unzuverlässig ist.

Wenn im Hintergrund ein SDK-Download-Task ausgeführt wird, können Sie den Download jetzt mit den Steuerelementen in der Statusleiste anhalten oder fortsetzen.

Eine Hintergrund-Downloadaufgabe in der Statusleiste mit neuen Steuerelementen, mit denen du den Download pausieren oder fortsetzen kannst.

Eine Downloadaufgabe im Hintergrund in der Statusleiste mit neuen Steuerelementen zum Pausieren oder Fortsetzen des Downloads.

Win32 wurde eingestellt

Die Windows 32-Bit-Version von Android Studio wird nach Dezember 2019 nicht mehr aktualisiert und auch ab Dezember 2020 nicht mehr unterstützt. Sie können Android Studio weiterhin verwenden. Aktualisieren Sie Ihre Workstation auf eine 64-Bit-Version von Windows, um weitere Updates zu erhalten.

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

Neue Option zur Optimierung der Gradle-Synchronisierungszeit

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

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

Wenn Sie diese Option aktivieren, überspringt Android Studio das Erstellen der Aufgabenliste während der Synchronisierung. Dadurch kann Gradle Sync schneller abgeschlossen werden und die Benutzeroberfläche reagiert schneller. Hinweis: 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-/Ausschalten des Offlinemodus von Gradle

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 Offlinemodus ein-/ausschalten Schaltfläche für Gradle Offline im Gradle-Bereich..

IntelliJ IDEA 2019.2

Die zentrale Android Studio-IDE wurde mit Verbesserungen von IntelliJ IDEA bis zum Release 2019.2 aktualisiert.

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

Community-Beitragende

Vielen Dank an alle Community-Beitragenden, die uns geholfen haben, Programmfehler zu finden und Android Studio 3.6 weiter zu verbessern. Insbesondere möchten wir den folgenden Personen danken, 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
  • Elli Graber
  • Emin Kokalari
  • Evan Tatarka
  • František Nagy
  • Gregor Schneider
  • Hannes Achleitner
  • Hans Peter Eide
  • Henning-Etagenbett
  • Hugo Visser
  • Igor Escodro
  • Iñaki Villar
  • Javentira Lienata
  • Peter Schneider
  • Kristoffer Danielsson
  • Liran Barsisa
  • Louis CAD
  • Lóránt Pintér
  • Łukasz Wasylkowski
  • Lukas Fielke
  • Malvin Sutanto
  • Masatoshi Kubode
  • Matthias Winter
  • Michael Bailey
  • Michał Górny
  • Mihai Neacsu
  • Mike Scamell
  • Monte Creasor
  • Nelson Osacky
  • Nelson Osacky
  • Nicolas 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 Chaladek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • Warren He
  • Yenchi Lin
  • Mustermann