Android Studio 3.5 (August 2019)

Android Studio 3.5 ist eine Hauptversion und das Ergebnis von Project Marble. Seit der Veröffentlichung von Android Studio 3.3 umfasste die Project Marble-Initiative mehrere Releases, deren Schwerpunkt auf der Verbesserung von drei Hauptbereichen der IDE liegt: Systemzustand, Verbesserung von Funktionen und Behebung von Fehlern.

Informationen zu diesen und anderen Project Marble-Updates findest du im Blogpost für Android-Entwickler oder in den Abschnitten unten.

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

3.5.3 (Dezember 2019)

Dieses kleine Update enthält verschiedene Fehlerkorrekturen und Leistungsverbesserungen.

3.5.2 (November 2019)

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

3.5.1 (Oktober 2019)

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

Project Marble: Systemzustand

In diesem Abschnitt werden die Änderungen in Android Studio 3.5 beschrieben, die vor allem auf die Verbesserung des Systemzustands abzielen.

Empfohlene Arbeitsspeichereinstellungen

Android Studio benachrichtigt dich, wenn erkannt wird, dass sich die Leistung verbessern lässt, wenn du die maximale RAM-Kapazität erhöht, die dein Betriebssystem Android Studio-Prozessen wie der Core IDE, dem Gradle-Daemon und dem Kotlin-Daemon zuweisen sollte. Sie können die empfohlenen Einstellungen entweder übernehmen, indem Sie auf den Aktionslink in der Benachrichtigung klicken, oder diese Einstellungen manuell anpassen. Wählen Sie dazu Datei > Einstellungen (oder Android Studio > Einstellungen unter macOS) und dann den Abschnitt Arbeitsspeichereinstellungen unter Darstellung und Verhalten > Systemeinstellungen aus. Weitere Informationen finden Sie unter Maximale Heap-Größe.

Eine Benachrichtigung zu den empfohlenen Speichereinstellungen.

Eine Benachrichtigung zu den empfohlenen Speichereinstellungen.

Bericht zur Arbeitsspeichernutzung

Speicherprobleme in Android Studio sind manchmal schwer zu reproduzieren und zu melden. Zur Lösung dieses Problems können Sie in Android Studio einen Bericht zur Arbeitsspeichernutzung erstellen. Klicken Sie dazu in der Menüleiste auf Hilfe > Arbeitsspeichernutzung analysieren. Dabei prüft die IDE die Daten lokal auf personenbezogene Daten, bevor Sie gefragt werden, ob Sie die Daten an das Android Studio-Team senden möchten, um die Ursache der Speicherprobleme zu ermitteln. Weitere Informationen finden Sie unter Bericht zur Arbeitsspeichernutzung erstellen.

Einen Bericht zur Arbeitsspeichernutzung

Einen Bericht zur Arbeitsspeichernutzung

Windows: E/A-Optimierung der Antivirendatei

Android Studio prüft jetzt automatisch, ob bestimmte Projektverzeichnisse vom Echtzeit-Antivirenscan ausgeschlossen sind. Wenn Anpassungen vorgenommen werden können, um die Build-Leistung zu verbessern, werden Sie von Android Studio benachrichtigt und erhalten eine Anleitung zur Optimierung Ihrer Antivirenkonfiguration. Weitere Informationen finden Sie unter Auswirkungen von Antivirensoftware auf die Build-Geschwindigkeit minimieren.

Project Marble: Verbesserung der Funktionen

In diesem Abschnitt werden die Änderungen in Android Studio 3.5 beschrieben, mit denen vor allem vorhandene Funktionen verbessert werden sollen.

Änderungen übernehmen

Mit „Änderungen übernehmen“ können Sie Code- und Ressourcenänderungen in die laufende Anwendung übertragen, ohne die Anwendung neu zu starten – und in einigen Fällen auch, ohne die aktuelle Aktivität neu zu starten. Mit „Änderungen übernehmen“ wird ein völlig neuer Ansatz implementiert, um den Status Ihrer Anwendung beizubehalten. Im Gegensatz zu Instant Run, bei der der Bytecode Ihres APK neu geschrieben wurde, werden bei „Änderungen anwenden“ Klassen im laufenden Betrieb neu definiert. Dazu wird die in Android 8.0 (API-Ebene 26) oder höher unterstützte Laufzeitinstrumentierung genutzt.

Weitere Informationen finden Sie unter Änderungen übernehmen.

Die Symbolleistenschaltflächen für „Änderungen übernehmen“.

Die Symbolleistenschaltflächen für „Änderungen übernehmen“.

Ablauf der Anwendungsbereitstellung

Die IDE hat ein neues Drop-down-Menü, mit dem Sie schnell auswählen können, auf welchem Gerät Sie Ihre App bereitstellen möchten. Dieses Menü enthält auch eine neue Option, mit der du deine App auf mehreren Geräten gleichzeitig ausführen kannst.

Drop-down-Menü für Zielgerät.

Drop-down-Menü für Zielgerät.

Verbesserte Gradle-Synchronisierungs- und Cache-Erkennung

Die IDE kann jetzt besser erkennen, wenn Gradle regelmäßig den Build-Cache leert, um die Festplattennutzung zu reduzieren. In früheren Versionen führte dieser Status dazu, dass die IDE fehlende Abhängigkeiten meldet und die Gradle-Synchronisierung fehlgeschlagen ist. Jetzt lädt die IDE einfach die Abhängigkeiten nach Bedarf herunter, um sicherzustellen, dass die Gradle-Synchronisierung erfolgreich abgeschlossen wird.

Verbesserte Build-Fehlerausgabe

Das Fenster Build Symbol für Build-Fenster bietet jetzt bessere Fehlerberichte, wie einen Link zur Datei und Zeile des gemeldeten Fehlers für die folgenden Build-Prozesse:

  • AAPT-Kompilierung und Verknüpfung
  • R8 und ProGuard
  • Dexing
  • Ressourcen zusammenführen
  • Parsen von XML-Dateien
  • Javac-, Kotlinc- und CMake-Kompilierung

Projekt-Upgrades

Verbesserte Aktualisierung, um mehr Informationen und Aktionen zum Aktualisieren der IDE und des Android-Gradle-Plug-ins bereitzustellen. Zu mehr Synchronisierungs- und Build-Fehlern gehören beispielsweise Aktionen, mit denen Sie Fehler beim Aktualisieren minimieren können.

Beachte, dass du die IDE unabhängig von anderen Komponenten wie dem Android-Gradle-Plug-in aktualisieren kannst. Sie können also die IDE sicher aktualisieren, sobald eine neuere Version verfügbar ist, und andere Komponenten später aktualisieren.

Layout-Editor

Android Studio 3.5 enthält einige Verbesserungen bei der Visualisierung, Verwaltung und Interaktion des Layouts.

Wenn Sie mit ConstraintLayout arbeiten, werden im Bereich Attribute im neuen Bereich Einschränkungen die Einschränkungsbeziehungen der ausgewählten UI-Komponente aufgeführt. Sie können eine Einschränkung entweder auf der Designoberfläche oder aus der Liste der Einschränkungen auswählen, um die Einschränkung in beiden Bereichen hervorzuheben.

Beschränken Sie Beziehungen für ein ausgewähltes UI-Element.

Beschränken Sie Beziehungen für ein ausgewähltes UI-Element.

Analog können Sie jetzt eine Einschränkung löschen, indem Sie sie auswählen und die Taste Delete drücken. Sie können eine Einschränkung auch löschen, indem Sie die Control-Taste (Command unter macOS) gedrückt halten und auf den Einschränkungsanker klicken. Wenn Sie die Taste Control oder Command gedrückt halten und den Mauszeiger auf einen Anker bewegen, werden alle zugehörigen Einschränkungen rot, um anzuzeigen, dass Sie sie per Klick löschen können.

Wenn eine Ansicht ausgewählt ist, können Sie eine Einschränkung erstellen, indem Sie im Bereich Einschränkungs-Widget des Bereichs Attribute auf eines der +-Symbole klicken, wie in der folgenden Abbildung dargestellt. Wenn Sie eine neue Einschränkung erstellen, wird sie im Layout-Editor ausgewählt und hervorgehoben. So erhalten Sie ein sofortiges visuelles Feedback zu dem, was Sie gerade hinzugefügt haben.

Eine Animation, die zeigt, wie mit dem Einschränkungs-Widget Einschränkungen erstellt werden.

Verwendung des Einschränkungs-Widgets zum Erstellen von Einschränkungen .

Beim Erstellen einer Einschränkung werden im Layout-Editor jetzt nur die zulässigen Ankerpunkte angezeigt, die Sie einschränken können. Bisher wurden im Layout-Editor alle Ankerpunkte in allen Ansichten hervorgehoben, unabhängig davon, ob sie daran beschränkt werden konnten. Außerdem wird das Ziel der Einschränkung jetzt in einem blauen Overlay hervorgehoben. Diese Hervorhebung ist besonders nützlich, wenn Sie versuchen, auf eine Komponente zu beschränken, die sich mit einer anderen überschneidet.

Eine Animation, die zeigt, wie in Android Studio 3.4 eine Einschränkung für eine sich überschneidende Komponente erstellt wird.

Einschränkung für eine sich überschneidende Komponente in Android Studio 3.4 erstellen

Eine Animation, die zeigt, wie in Android Studio 3.5 eine Einschränkung für eine sich überschneidende Komponente erstellt wird.

Einschränkung für eine sich überschneidende Komponente in Android Studio 3.5 erstellen

Zusätzlich zu den oben genannten Updates enthält Android Studio 3.5 auch die folgenden Verbesserungen im Layout-Editor:

  • Mit dem Einschränkungs-Widget und dem Drop-down-Menü für die Standardmarge können Sie jetzt Dimensionsressourcen für Ränder verwenden.
  • In der Symbolleiste des Layout-Editors wurde die Liste der Geräte aktualisiert, die die Größe der Designoberfläche bestimmen. Außerdem wurde das Andockenverhalten bei der Größenänderung verbessert und die Ziehpunkte zur Größenänderung auf der Designoberfläche sind jetzt immer sichtbar. Beim Ändern der Größe werden neue Overlays mit gängigen Gerätegrößen angezeigt.
  • Der Layout-Editor hat ein neues Farbschema, das die Einheitlichkeit verbessert und den Kontrast zwischen Komponenten, Text und Einschränkungen reduziert.
  • Der Entwurfsmodus bietet jetzt Textunterstützung für einige Komponenten, in denen kein Text angezeigt wurde.

Weitere Informationen zu diesen Änderungen findest du unter Android Studio Project Marble: Layout Editor.

Datenbindung

Neben der Unterstützung für die inkrementelle Annotationsverarbeitung für die Datenbindung verbessert die IDE die Funktionen und Leistung des intelligenten Editors beim Erstellen von Datenbindungsausdrücken in XML.

Eine Animation, die die Code-Editor-Leistung in Android Studio 3.4 zeigt.

Leistung des Code-Editors in Android Studio 3.4

Eine Animation, die die Code-Editor-Leistung in Android Studio 3.5 zeigt.

Die Codebearbeitungsleistung in Android Studio 3.5 wurde verbessert.

Verbesserte Unterstützung für C/C++-Projekte

Android Studio 3.5 enthält mehrere Änderungen, durch die die Unterstützung für C/C++-Projekte verbessert wird.

Verbesserungen im Bereich „Varianten erstellen“ für die Synchronisierung einzelner Varianten

Sie können jetzt im Bereich Build-Varianten sowohl die aktive Build-Variante als auch die aktive ABI angeben. Dieses Feature vereinfacht die Build-Konfiguration pro Modul und kann auch die Leistung der Gradle-Synchronisierung verbessern.

Weitere Informationen finden Sie unter Build-Variante ändern.

Bereich „Build Variants“ (Varianten erstellen) mit Auswahl einzelner Varianten nach ABI

Der Bereich „Build Variants“ (Varianten erstellen) mit der Auswahl einzelner Varianten durch ABI

Parallele Versionen des NDK

Sie können jetzt mehrere Versionen des NDK nebeneinander verwenden. Dieses Feature bietet Ihnen bei der Konfiguration Ihrer Projekte mehr Flexibilität, z. B. wenn Sie Projekte haben, die verschiedene Versionen des NDK auf derselben Maschine verwenden.

Wenn Ihr Projekt das Android-Gradle-Plug-in 3.5.0 oder höher verwendet, können Sie auch die Version des NDK angeben, die von den einzelnen Modulen in Ihrem Projekt verwendet werden soll. Sie können dieses Feature verwenden, um reproduzierbare Builds zu erstellen und Inkompatibilitäten zwischen NDK-Versionen und dem Android-Gradle-Plug-in zu verringern.

Weitere Informationen finden Sie unter NDK, CMake und LLDB installieren und konfigurieren.

ChromeOS-Support

Android Studio unterstützt jetzt offiziell ChromeOS-Geräte, wie z. B. das HP Chromebook x360 14, das Acer Chromebook 13/Spin 13 und andere Geräte. Weitere Informationen dazu findest du in den Systemanforderungen. Laden Sie zuerst Android Studio auf Ihr kompatibles ChromeOS-Gerät herunter und folgen Sie der Installationsanleitung.

Hinweis: Android Studio unter ChromeOS unterstützt derzeit die Bereitstellung von Apps nur auf verbundenen Hardwaregeräten. Weitere Informationen finden Sie unter Apps auf einem Hardwaregerät ausführen.

Bedingte Bereitstellung für Funktionsmodule

Mit der bedingten Bereitstellung kannst du bestimmte Gerätekonfigurationsanforderungen für Featuremodule festlegen, die während der App-Installation automatisch heruntergeladen werden. Beispielsweise können Sie ein Funktionsmodul mit Augmented-Reality-Funktionen (AR) bei der App-Installation nur für Geräte konfigurieren, die AR unterstützen.

Dieser Übermittlungsmechanismus unterstützt derzeit die Steuerung des Downloads eines Moduls bei der App-Installation anhand der folgenden Gerätekonfigurationen:

  • Hardware- und Softwarefunktionen des Geräts, einschließlich OpenGL ES-Version
  • Land des Nutzers
  • API-Ebene

Wenn ein Gerät nicht alle von Ihnen angegebenen Anforderungen erfüllt, wird das Modul nicht bei der App-Installation heruntergeladen. Ihre App kann jedoch später über die Play Core Library anfordern, das Modul on demand herunterzuladen. Weitere Informationen finden Sie unter Bedingte Zustellung konfigurieren.

IntelliJ IDEA 2019.1

Die zentrale Android Studio-IDE wurde mit Verbesserungen von IntelliJ IDEA bis zum Release 2019.1 aktualisiert, z. B. bei der Designanpassung.

Die letzte IntelliJ-Version, die in Android Studio enthalten war, war 2018.3.4. Weitere Informationen zu den Verbesserungen aus anderen IntelliJ-Versionen, die in diesem Release von Android Studio kumulativ enthalten sind, finden Sie in den folgenden Fehlerkorrekturen:

Updates für Android Gradle-Plug-in 3.5.0

Informationen zu den Neuerungen im Android-Gradle-Plug-in 3.5.0, z. B. verbesserter Support für die inkrementelle Annotationsverarbeitung und im Cache speicherbare Einheitentests, findest du in den Versionshinweisen.

Community-Beitragende

Vielen Dank an alle Beitragenden, die uns geholfen haben, Programmfehler zu finden und Android Studio 3.5 weiter zu verbessern. Insbesondere möchten wir den folgenden Personen danken, die P0- und P1-Fehler gemeldet haben: