Android Studio 3.6 (Februar 2020)

Android Studio 3.6 ist ein wichtiger Release mit einer Vielzahl neuer Funktionen und Verbesserungen.

Außerdem möchten wir uns bei allen Community-Mitgliedern bedanken, die an dieser Version mitgewirkt haben.

3.6.3 (April 2020)

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

3.6.2 (März 2020)

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

3.6.1 (Februar 2020)

Dieses kleinere Update enthält 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 mehrere Designtools, darunter den Layout-Editor und den Ressourcenmanager.

Splitscreen und Zoom in Design-Editoren

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

Diese Version enthält die folgenden Updates für die visuellen Design-Editoren:

  • Design-Editoren wie der Layout-Editor und der Navigations-Editor bieten jetzt eine Splitansicht, mit der Sie die Design- und die Codeansicht Ihrer Benutzeroberfläche gleichzeitig sehen können. Oben rechts im Editorfenster befinden sich jetzt drei Schaltflächen Symbole anzeigen, mit denen Sie zwischen den Ansichtsoptionen wechseln können:

    • Klicken Sie auf das Symbol Splitscreen Symbol für die geteilte Ansicht, um die geteilte Ansicht zu aktivieren.
    • Klicken Sie auf das Symbol Quelle Symbol für die Quellansicht, um die XML-Quelldatenansicht 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 Designeditoren wurden in ein schwebendes Steuerfeld rechts unten im Editorfenster verschoben.

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

Tab „Ressourcen für die Farbauswahl“

Damit Sie die Farbressourcenwerte in Ihrer App schnell aktualisieren können, wenn Sie die Farbauswahl in Ihrer XML-Datei oder die Designtools verwenden, werden die Farbressourcenwerte jetzt in der IDE für Sie ausgefüllt.

Farbauswahl mit ausgefüllten Farbwerten

Resource Manager

Der Resource Manager enthält die folgenden Updates:

  • Der Resource Manager 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.
  • Über die Filterschaltfläche können Sie sich Ressourcen aus lokal 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 Importprozesses umbenennen, indem Sie in das Textfeld über der Ressource klicken.

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

Aktualisierungen des Android-Gradle-Plug-ins

Die neueste Version des Android Gradle-Plug-ins enthält viele Updates, darunter Optimierungen für die Buildgeschwindigkeit, 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 der Ansichtsbindung können Sie Code, der mit Ansichten interagiert, einfacher schreiben, indem Sie für jede XML-Layoutdatei eine Bindungsklasse generieren. Diese Klassen enthalten direkte Verweise auf alle Ansichten, die eine ID im entsprechenden Layout haben.

Da die Datenbindung findViewById() ersetzt, wird das Risiko von Nullzeigerausnahmen aufgrund einer ungültigen Ansichts-ID eliminiert.

Wenn Sie die Ansichtsbindung aktivieren möchten, müssen Sie das Android Gradle-Plug-in 3.6.0 oder höher verwenden und in der build.gradle-Datei jedes Moduls Folgendes angeben:

Cool

  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 Ihrer laufenden App bereitstellen. Klicken Sie dazu entweder auf Codeänderungen anwenden oder Änderungen anwenden und Aktivität neu starten.

Weitere Informationen zu den Unterschieden zwischen diesen beiden Aktionen finden Sie unter Änderungen anwenden.

Menüoption für die Unterstützung von Instant Apps überarbeiten

Sie können Ihr Basismodul jetzt jederzeit nach dem Erstellen Ihres App-Projekts sofort aktivieren:

  1. Öffnen Sie den Bereich Projekt, indem Sie in der Menüleiste View > Tool Windows > Project (Ansicht > Toolfenster > Projekt) auswählen.
  2. Klicken Sie mit der rechten Maustaste auf das Basismodul, das in der Regel den Namen „app“ hat, und wählen Sie Refactor > Enable Instant Apps Support (Umstrukturieren > 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 zum sofortigen Aktivieren des Basis-App-Moduls im Assistenten Neues Projekt erstellen wurde entfernt.

Weitere Informationen finden Sie unter Übersicht über Google Play Instant.

Bytecode von Klasse und Methode in APK Analyzer deobfuscieren

Wenn Sie DEX-Dateien mit dem APK Analyzer prüfen, können Sie den Bytecode von Klassen und Methoden so deobfuszieren:

  1. Wählen Sie in der Menüleiste Build > APK analysieren aus.
  2. Wählen Sie im angezeigten Dialogfeld das APK aus, das Sie prüfen möchten.
  3. Klicken Sie auf Öffnen.
  4. Wählen Sie im APK Analyzer die DEX-Datei aus, die Sie überprüfen möchten.
  5. Laden Sie in der DEX-Dateianzeige die ProGuard-Zuordnungsdatei für die zu analysierende APK-Datei.
  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 (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:

  • Sie können von einer JNI-Deklaration zur entsprechenden Implementierungsfunktion in C/C++ wechseln. Bewegen Sie dazu den Mauszeiger in der verwalteten Quellcodedatei auf die C- oder C++-Elementmarkierung in der Nähe der Zeilennummer.

  • 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 zu aktivierende C/C++-Datei ein.

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

  • Wenn Sie eine native Implementierungsfunktion umbenennen (umstrukturieren), 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-Entwicklungsablauf, einschließlich verbesserter Typhinweise, automatischer Vervollständigung, Prüfungen und Code-Refaktorisierung.

APK wird für native Bibliotheken aktualisiert {:#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-APK-Quellen anhängen

Wenn Sie ein Profil für vordefinierte APKs erstellen und Fehler beheben, können Sie jetzt externe APK-Quellen anhängen, die nur für Kotlin vorgesehen sind. Weitere Informationen finden Sie unter Kotlin-/Java-Quellen anhängen.

Datenlecks in Memory Profiler

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

Die folgenden Datentypen werden im Filter angezeigt:

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

Nur Kotlin-APK-Quellen anhängen

Es ist jetzt möglich, externe APK-Quellen, die nur Kotlin-Code enthalten, anzuhängen, wenn Sie vorgefertigte APKs profilieren und beheben. Weitere Informationen finden Sie unter Kotlin-/Java-Quellen anhängen.

Leckortung im Speicher-Profiler

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

Die folgenden Datentypen werden im Filter angezeigt:

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

In bestimmten Situationen, z. B. in den folgenden, kann der Filter zu Falschmeldungen führen:

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

Wenn Sie diese Funktion verwenden 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 anzeigen möchten, die möglicherweise Speicherlecks verursachen, setzen Sie im Bereich „Heap-Dump“ des Speicherprofils ein Häkchen in das Kästchen Aktivitäts-/Fragmentlecks.

Profiler: Erkennung von Speicherlecks

Heap-Dump nach Speicherlecks filtern

Emulatoren

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

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, werden die Optionen auf dem Tab „Standort“ jetzt auf zwei Tabs angezeigt: Einzelne Punkte und Routen.

Einzelne Punkte

Auf dem Tab Einzelne Punkte können Sie über die Google Maps-Webansicht nach interessanten Orten suchen, genau wie bei der Verwendung von 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 Ihre gespeicherten Standorte werden rechts im Fenster Erweiterte Einstellungen aufgeführt.

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

Tab „Einzelne Punkte“ in den erweiterten Steuerelementen des Emulators.

Routen

Ähnlich wie auf dem Tab Einzelne Punkte gibt es auf dem 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 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 Haltestellen 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 von Ihnen gespeicherten Route folgt, wählen Sie die Route aus der Liste der Gespeicherten Routen aus und klicken Sie rechts unten im Fenster Erweiterte Steuerelemente auf Route abspielen. Klicken Sie auf Route beenden, um die Simulation zu beenden.

Tab „Routen“ in den erweiterten Steuerelementen des Emulators.

Wenn der Emulator kontinuierlich die angegebene Route abfahren soll, 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 Multifenster und Multidisplay unterstützen. Wenn ein virtuelles Gerät ausgeführt wird, können Sie so bis zu zwei weitere Displays hinzufügen:

  1. Öffnen Sie die erweiterten Steuerelemente und gehen Sie zum Tab Bildschirme.

  2. Klicken Sie auf Sekundäres Display hinzufügen, um ein weiteres Display 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 das benutzerdefinierte Display fest.

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

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

Mehrere Displays auf dem Tab „Display“ der erweiterten Steuerelemente des Emulators hinzufügen

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

Wenn Sie ein neues Projekt mit Android Studio erstellen, können Sie im Assistenten Neues Projekt erstellen auf dem Tab Automotive jetzt drei Vorlagen auswählen: Keine Aktivität, Mediendienst und Messagingdienst. Bei bestehenden Projekten können Sie die Unterstützung für Android Automotive-Geräte hinzufügen, indem Sie in der Menüleiste Datei > Neu > Neues Modul und dann Automotive-Modul auswählen. Der Assistent Neues Modul erstellen führt Sie dann durch das Erstellen eines neuen Moduls mit einer der Android Automotive-Projektvorlagen.

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

Außerdem können Sie jetzt ein virtuelles Android-Gerät (AVD) für Android Automotive OS-Geräte erstellen. Dazu wählen Sie im Assistenten zur Konfiguration virtueller Geräte auf dem Tab Automotive eine der folgenden Optionen aus.

  1. Polestar 2: Erstellen Sie einen Anzeigenblock, der das Infotainmentsystem von Polestar 2 emuliert.
  2. Automotive (1024p, Querformat): Erstellen Sie eine AVD für generische Android Automotive-Infotainmentsysteme mit einer Auflösung von 1.024 × 768 Pixeln.

Ein virtuelles Android Automotive-Gerät wird ausgewählt..

Fortsetzbare SDK-Downloads

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

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

Ein Hintergrunddownload in der Statusleiste mit neuen Steuerelementen, mit denen Sie den Download pausieren oder fortsetzen können.

Eine Downloadaufgabe im Hintergrund in der Statusleiste mit neuen Steuerelementen, mit denen Sie den Download anhalten oder fortsetzen können.

Win32 wird 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, führen Sie ein Upgrade Ihrer Workstation auf eine 64-Bit-Version von Windows durch.

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

Neue Option zur Optimierung der Gradle-Synchronisierungszeit

In früheren Releases wurde in 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 „Gradle-Aufgabenliste nicht während der Gradle-Synchronisierung erstellen“ aus.

Wenn Sie diese Option aktivieren, überspringt Android Studio das Erstellen der Aufgabenliste während der Synchronisierung. Dadurch wird die Gradle-Synchronisierung schneller abgeschlossen und die UI reagiert reaktionsschneller. Wenn die IDE das Erstellen der Aufgabenliste überspringt, sind die Aufgabenlisten im Gradle-Steuerfeld leer und die automatische Vervollständigung von Aufgabennamen in Build-Dateien funktioniert nicht.

Neuer Ort zum Aktivieren und Deaktivieren des Offlinemodus von Gradle

Wenn Sie den Offlinemodus von Gradle aktivieren oder deaktivieren möchten, wählen Sie zuerst in der Menüleiste Ansicht > Toolfenster > Gradle aus. Klicken Sie dann oben im Fenster Gradle auf Offlinemodus aktivieren/deaktivieren Schaltfläche „Gradle offline“ im Gradle-Steuerfeld.

IntelliJ IDEA 2019.2

Die Android Studio-IDE wurde mit Verbesserungen aus IntelliJ IDEA in der Version 2019.2 aktualisiert.

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

Communitybeiträge

Vielen Dank an alle Community-Mitglieder, die uns geholfen haben, Fehler zu finden und Android Studio 3.6 weiter zu verbessern. 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
  • Peter Eide
  • Etagenhaus Müller
  • Hugo Visser
  • Igor Escodro
  • Iñaki Villar
  • Javentira Lienata
  • Joe Rogers
  • Kristoffer Danielsson
  • Liran Barsisa
  • Louis CAD
  • Lóránt Pintér
  • Łukasz Wasylkowski
  • Fielke
  • Malvin Sutanto
  • Masatoshi Kubode
  • Mathew Winters
  • Michael Bailey
  • Michał Górny
  • Mihai Neacsu
  • Betrug bei Mike
  • Monte Creasor
  • Nelson Osacky
  • Nelson Osacky
  • Nick Firmani
  • Nicklas Ansman Giertz
  • Niclas Kron
  • Nicolás
  • Niek Haarman
  • Niels van Hove
  • Niklas Baudy
  • Renato Goncalves
  • Roar Grønmo
  • Ruslan Baratow
  • 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