Android Studio 3.0 (Oktober 2017)

Android Studio 3.0.0 ist ein wichtiger Release mit vielen neuen Funktionen und Verbesserungen.

macOS-Nutzer: Wenn Sie eine ältere Version von Android Studio aktualisieren, wird möglicherweise ein Dialogfeld mit einem Updatefehler angezeigt, in dem steht: „Some conflicts were found in the installation area“ (Im Installationsbereich wurden einige Konflikte gefunden). Ignorieren Sie diesen Fehler einfach und klicken Sie auf Abbrechen, um die Installation fortzusetzen.

3.0.1 (November 2017)

Dies ist ein kleines Update für Android Studio 3.0, das allgemeine Fehlerkorrekturen und Leistungsverbesserungen enthält.

Android-Plug-in für Gradle 3.0.0

Das neue Android-Plug-in für Gradle bietet eine Vielzahl von Verbesserungen und neuen Funktionen, vor allem aber eine bessere Build-Leistung für Projekte mit einer großen Anzahl von Modulen. Wenn Sie das neue Plug-in mit diesen großen Projekten verwenden, sollten Sie Folgendes feststellen:

  • Schnellere Build-Konfigurationen durch neue verzögerte Abhängigkeitsauflösung.
  • Variantenabhängige Auflösung von Abhängigkeiten nur für die Projekte und Varianten, die Sie erstellen.
  • Schnellere inkrementelle Builds, wenn einfache Änderungen am Code oder an Ressourcen vorgenommen werden.

Hinweis: Diese Verbesserungen erforderten erhebliche Änderungen, die einige Verhaltensweisen, die DSL und die APIs des Plug-ins beeinträchtigen. Für ein Upgrade auf Version 3.0.0 sind möglicherweise Änderungen an Ihren Build-Dateien und Gradle-Plug-ins erforderlich.

Diese Version enthält außerdem Folgendes:

  • Unterstützung für Android 8.0.
  • Unterstützung für das Erstellen separater APKs basierend auf Sprachressourcen.
  • Unterstützung von Java 8-Bibliotheken und Java 8-Sprachfunktionen (ohne den Jack-Compiler).
  • Unterstützung für Android Test Support Library 1.0 (Android Test Utility und Android Test Orchestrator).
  • Die Build-Geschwindigkeit von „ndk-build“ und „cmake“ wurde verbessert.
  • Die Geschwindigkeit der Gradle-Synchronisierung wurde verbessert.
  • AAPT2 ist jetzt standardmäßig aktiviert.
  • Die Verwendung von ndkCompile ist jetzt eingeschränkter. Stattdessen sollten Sie entweder CMake oder ndk-build verwenden, um nativen Code zu kompilieren, den Sie in Ihr APK packen möchten. Weitere Informationen finden Sie unter Von ndkcompile migrieren.

Weitere Informationen zu den Änderungen finden Sie in den Versionshinweisen zum Android-Gradle-Plug-in.

Wenn Sie bereit sind, auf das neue Plug-in zu aktualisieren, lesen Sie den Abschnitt Zu Android-Plug-in für Gradle 3.0.0 migrieren.

Kotlin-Unterstützung

Wie auf der Google I/O 2017 angekündigt, wird die Programmiersprache Kotlin jetzt offiziell auf Android unterstützt. Mit diesem Release bietet Android Studio also Unterstützung für die Kotlin-Sprache für die Android-Entwicklung.

Sie können Kotlin in Ihr Projekt einbinden, indem Sie eine Java-Datei in Kotlin konvertieren (klicken Sie auf Code > Convert Java File to Kotlin File) oder indem Sie mit dem Assistenten „New Project“ ein neues Kotlin-fähiges Projekt erstellen.

Hier erfahren Sie, wie Sie Kotlin zu Ihrem Projekt hinzufügen.

Unterstützung von Java 8-Sprachfunktionen

Sie können jetzt bestimmte Java 8-Sprachfunktionen verwenden und mit Java 8 erstellte Bibliotheken nutzen. Jack ist nicht mehr erforderlich. Sie sollten Jack zuerst deaktivieren, um die verbesserte Java 8-Unterstützung zu nutzen, die in die Standard-Toolchain integriert ist.

Wenn Sie Ihr Projekt aktualisieren möchten, damit es die neue Java 8-Sprachtoolchain unterstützt, aktualisieren Sie im Dialogfeld Project Structure (Projektstruktur) die Source Compatibility (Quellkompatibilität) und Target Compatibility (Zielkompatibilität) auf 1.8 (klicken Sie auf File > Project Structure (Datei > Projektstruktur)). Weitere Informationen finden Sie unter Java 8-Sprachfunktionen verwenden.

Android Profiler

Der neue Android Profiler ersetzt das Android Monitor-Tool und bietet eine neue Reihe von Tools, mit denen Sie die CPU-, Speicher- und Netzwerknutzung Ihrer App in Echtzeit messen können. Sie können die Methode auf Grundlage von Stichproben verfolgen, um die Ausführung Ihres Codes zu messen, Heap-Dumps zu erfassen, Speicherzuweisungen anzusehen und die Details von über das Netzwerk übertragenen Dateien zu prüfen.

Klicken Sie auf View > Tool Windows > Android Profiler (oder in der Symbolleiste auf Android Profiler), um das Fenster zu öffnen.

In der Ereigniszeitachse oben im Fenster werden Berührungsereignisse, Tastendrücke und Aktivitätsänderungen angezeigt. So erhalten Sie mehr Kontext für andere Leistungsereignisse in der Zeitachse.

Hinweis: Die Ansicht Logcat wurde ebenfalls in ein separates Fenster verschoben. Sie befand sich zuvor im Android Monitor, der entfernt wurde.

Klicken Sie in der Übersicht der Zeitachse des Android Profiler auf die Zeitachse CPU, MEMORY oder NETWORK, um auf die entsprechenden Profiler-Tools zuzugreifen.

CPU-Profiler

Mit dem CPU Profiler können Sie die CPU-Thread-Nutzung Ihrer App analysieren, indem Sie einen CPU-Trace mit Stichproben oder instrumentierten Daten auslösen. Anschließend können Sie CPU-Leistungsprobleme mithilfe verschiedener Datenansichten und Filter beheben.

Weitere Informationen finden Sie im CPU Profiler-Leitfaden.

Speicher-Profiler

Mit dem Memory Profiler können Sie Speicherlecks und Speicher-Churn identifizieren, die zu Ruckeln, Einfrieren und sogar zu App-Abstürzen führen können. Er zeigt ein Echtzeitdiagramm der Arbeitsspeichernutzung Ihrer App an, ermöglicht es Ihnen, einen Heap-Dump zu erfassen, Garbage Collections zu erzwingen und Speicherzuweisungen zu verfolgen.

Weitere Informationen finden Sie im Leitfaden zum Memory Profiler.

Network Profiler

Mit dem Network Profiler können Sie die Netzwerkaktivität Ihrer App überwachen, die Nutzlast jeder Ihrer Netzwerkanfragen untersuchen und zum Code zurückkehren, der die Netzwerkanfrage generiert hat.

Weitere Informationen finden Sie im Leitfaden zum Network Profiler.

APK-Profiling und ‑Fehlerbehebung

In Android Studio können Sie jetzt jedes APK profilieren und debuggen, ohne es aus einem Android Studio-Projekt erstellen zu müssen. Voraussetzung ist, dass das APK so erstellt wurde, dass Debugging möglich ist, und Sie Zugriff auf die Debugging-Symbole und Quellcode-Dateien haben.

Klicken Sie zum Starten im Android Studio-Begrüßungsbildschirm auf APK profilieren oder debuggen. Wenn Sie bereits ein Projekt geöffnet haben, klicken Sie in der Menüleiste auf Datei > APK für Profilerstellung oder Debugging. Dadurch werden die entpackten APK-Dateien angezeigt, der Code wird jedoch nicht dekompiliert. Damit Sie Breakpoints richtig hinzufügen und Stacktraces ansehen können, müssen Sie also Java-Quelldateien und native Debug-Symbole anhängen.

Weitere Informationen finden Sie unter Profil für vorgefertigte APKs erstellen und Fehler beheben.

Geräte-Datei-Explorer

Mit dem neuen Device File Explorer können Sie das Dateisystem Ihres verbundenen Geräts untersuchen und Dateien zwischen dem Gerät und Ihrem Computer übertragen. Dieses Tool ersetzt das in DDMS verfügbare Dateisystemtool.

Klicken Sie zum Öffnen auf View > Tool Windows > Device File Explorer (Ansicht > Toolfenster > Geräte-Datei-Explorer).

Weitere Informationen finden Sie im Leitfaden zum Device File Explorer.

Unterstützung für Instant Apps

Die neue Unterstützung für Android-Instant-Apps ermöglicht es Ihnen, Instant Apps in Ihrem Projekt mit zwei neuen Modultypen zu erstellen: Instant-App-Module und Feature-Module. Dazu müssen Sie das Instant Apps Development SDK installieren.

Android Studio enthält auch eine neue Refactoring-Aktion zum Modularisieren, mit der Sie einem bestehenden Projekt Unterstützung für Instant Apps hinzufügen können. Wenn Sie beispielsweise Ihr Projekt umgestalten möchten, um einige Klassen in einem Instant-App-Funktionsmodul zu platzieren, wählen Sie die Klassen im Fenster Project (Projekt) aus und klicken Sie auf Refactor > Modularize (Umgestalten > Modularisieren). Wählen Sie im angezeigten Dialogfeld das Modul aus, in dem die Klassen gespeichert werden sollen, und klicken Sie auf OK.

Wenn Sie Ihre Instant App testen möchten, können Sie das Instant App-Modul auf einem verbundenen Gerät erstellen und ausführen. Geben Sie dazu die URL der Instant App in den Startoptionen der Ausführungskonfiguration an: Wählen Sie Ausführen > Konfigurationen bearbeiten aus, wählen Sie Ihr Instant App-Modul aus und legen Sie dann die URL unter Startoptionen fest.

Weitere Informationen finden Sie unter Android Instant Apps.

Android Things-Module

Neue Android Things-Vorlagen in den Assistenten „New Project“ (Neues Projekt) und „New Module“ (Neues Modul), die Ihnen den Einstieg in die Entwicklung für Android-basierte IoT-Geräte erleichtern.

Weitere Informationen finden Sie unter Android Things-Projekt erstellen.

Assistent für adaptive Symbole

Image Asset Studio unterstützt jetzt Vektordrawables und ermöglicht es Ihnen, adaptive Launcher-Symbole für Android 8.0 zu erstellen und gleichzeitig herkömmliche Symbole („Legacy“-Symbole) für ältere Geräte zu generieren.

Klicken Sie dazu mit der rechten Maustaste auf den Ordner res in Ihrem Projekt und dann auf Neu > Image Asset. Wählen Sie im Fenster Asset Studio als Symboltyp Launcher-Symbole (adaptiv und Legacy) aus.

Hinweis: Sie müssen compileSdkVersion auf 26 oder höher festlegen, um adaptive Launcher-Symbole zu verwenden.

Weitere Informationen finden Sie unter Adaptive Symbole.

Unterstützung für Schriftartressourcen

Zur Unterstützung der neuen Schriftartressourcen in Android 8.0 enthält Android Studio eine Schriftartressourcenauswahl, mit der Sie Schriftarten in Ihre App einbinden oder Ihr Projekt so konfigurieren können, dass die Schriftarten auf das Gerät heruntergeladen werden (sofern verfügbar). Im Layout-Editor können Sie sich auch eine Vorschau der Schriftarten in Ihrem Layout ansehen.

Wenn Sie herunterladbare Schriftarten ausprobieren möchten, muss auf Ihrem Gerät oder Emulator Google Play-Dienste v11.2.63 oder höher ausgeführt werden. Weitere Informationen finden Sie unter Herunterladbare Schriftarten.

Firebase App Indexing Assistant

Der Firebase Assistant wurde mit einem neuen Tutorial zum Testen der App-Indexierung aktualisiert. Wählen Sie zum Öffnen des Assistenten Tools > Firebase aus. Wählen Sie dann App-Indexierung > App-Indexierung testen aus.

Das Tutorial enthält neue Schaltflächen zum Testen der Indexierung Ihrer öffentlichen und persönlichen Inhalte:

  • Klicken Sie in Schritt 2 auf Suchergebnisse in der Vorschau ansehen, um zu prüfen, ob Ihre URLs in den Google-Suchergebnissen angezeigt werden.
  • Klicken Sie in Schritt 3 auf Auf Fehler prüfen, um zu prüfen, ob die indexierbaren Objekte in Ihrer App dem Index für persönliche Inhalte hinzugefügt wurden.

Der App Links Assistant wurde mit den folgenden neuen Funktionen aktualisiert:

  • Fügen Sie URL-Tests für jede URL-Zuordnung hinzu, damit Ihre Intent-Filter URLs aus der Praxis verarbeiten können.

    Sie können diese URL-Tests auch manuell mit dem unten beschriebenen <tools:validation>-Tag definieren.

  • Erstellen Sie eine Digital Asset Links-Datei mit dem entsprechenden Objekteintrag, um Google Smart Lock zu unterstützen, und fügen Sie Ihrer Manifestdatei das entsprechende asset_statements <meta-data>-Tag hinzu.

URL-Intent-Filter-Validator

Android Studio unterstützt jetzt ein spezielles Tag in der Manifestdatei, mit dem Sie Ihre Intent-Filter-URLs testen können. Das sind dieselben Tags, die der Assistent für App-Links für Sie erstellen kann.

Wenn Sie eine Test-URL für einen Intent-Filter deklarieren möchten, fügen Sie ein <tools:validation>-Element neben dem entsprechenden <intent-filter>-Element hinzu. Beispiel:

      <activity ...>
          <intent-filter>
              ...
          </intent-filter>
          <tools:validation testUrl="https://www.example.com/recipe/1138" />
      </activity>
    
    

Achten Sie darauf, xmlns:tools="http://schemas.android.com/tools" auch in das <manifest>-Tag aufzunehmen.

Wenn eine der Test-URLs die Intent-Filterdefinition nicht besteht, wird ein Lint-Fehler angezeigt. Mit einem solchen Fehler können Sie weiterhin Debug-Varianten erstellen, aber Ihre Release-Builds werden dadurch unterbrochen.

Layout Editor

Der Layout-Editor wurde aktualisiert und bietet jetzt einige Verbesserungen, darunter:

  • Neues Symbolleistenlayout und neue Symbole.
  • Aktualisiertes Layout in der Komponentenstruktur.
  • Das Einfügen von Ansichten per Drag-and-drop wurde verbessert.
  • Ein neues Fehlerfeld unter dem Editor, in dem alle Probleme mit Vorschlägen zur Behebung (falls verfügbar) angezeigt werden.
  • Verschiedene Verbesserungen an der Benutzeroberfläche für die Entwicklung mit ConstraintLayout, z. B.:
    • Neue Unterstützung beim Erstellen von Barrieren.
    • Neue Unterstützung zum Erstellen von Gruppen: Wählen Sie in der Symbolleiste Richtlinien > Gruppe hinzufügen aus (erfordert ConstraintLayout 1.1.0 Beta 2 oder höher).
    • Neue Benutzeroberfläche zum Erstellen von Ketten: Wählen Sie mehrere Ansichten aus, klicken Sie mit der rechten Maustaste und wählen Sie Kette aus.

Layout Inspector

Der Layout Inspector wurde verbessert, um das Debuggen von Problemen mit App-Layouts zu erleichtern. Dazu gehören das Gruppieren von Eigenschaften in gängige Kategorien und eine neue Suchfunktion sowohl im Bereich View Tree (Ansichtsbaum) als auch im Bereich Properties (Eigenschaften).

APK Analyzer

Sie können den APK Analyzer jetzt über die Befehlszeile mit dem Tool apkanalyzer verwenden.

Der APK Analyzer wurde mit den folgenden Verbesserungen aktualisiert:

  • Für mit ProGuard erstellte APKs können Sie ProGuard-Zuordnungsdateien laden, die dem DEX-Viewer Funktionen hinzufügen, darunter:
    • Fett formatierte Knoten, die angeben, dass die Knoten beim Verkleinern des Codes nicht entfernt werden sollen.
    • Eine Schaltfläche zum Einblenden von Knoten, die während des Verkleinerungsprozesses entfernt wurden.
    • Eine Schaltfläche, mit der die ursprünglichen Namen von Knoten in der Baumansicht wiederhergestellt werden, die von ProGuard verschleiert wurden.
  • Im DEX Viewer wird jetzt die geschätzte Größenwirkung der einzelnen Pakete, Klassen und Methoden angezeigt.
  • Oben gibt es neue Filteroptionen, mit denen Sie Felder und Methoden ein- und ausblenden können.
  • In der Baumansicht werden Knoten, die Verweise sind, die nicht in der DEX-Datei definiert sind, kursiv dargestellt.

Weitere Informationen finden Sie unter Build mit APK Analyzer analysieren.

Vorschau für den D8 DEX-Compiler

Android Studio 3.0 enthält einen optionalen neuen DEX-Compiler namens D8. Er wird den DX-Compiler schließlich ersetzen, aber Sie können den neuen D8-Compiler jetzt schon verwenden.

Die DEX-Kompilierung wirkt sich direkt auf die Build-Zeit Ihrer App, die Größe der Datei .dex und die Laufzeitleistung aus. Im Vergleich zum aktuellen DX-Compiler kompiliert D8 schneller und gibt kleinere .dex-Dateien aus. Die Laufzeitleistung der App ist dabei gleich oder besser.

Um die Funktion auszuprobieren, legen Sie in der Datei gradle.properties Ihres Projekts Folgendes fest:

android.enableD8=true
    

Weitere Informationen finden Sie im Blogpost zum D8-Compiler.

Maven-Repository von Google

Android Studio verwendet jetzt standardmäßig das Maven-Repository von Google. Es ist also nicht mehr erforderlich, den Android SDK Manager zu verwenden, um Updates für die Android-Supportbibliothek, Google Play-Dienste, Firebase und andere Abhängigkeiten zu erhalten. So können Sie Ihre Bibliotheken leichter auf dem neuesten Stand halten, insbesondere wenn Sie ein CI-System (Continuous Integration) verwenden.

Alle neuen Projekte enthalten jetzt standardmäßig das Google Maven-Repository. Wenn Sie Ihr vorhandenes Projekt aktualisieren möchten, fügen Sie google() im Block repositories der build.gradle-Datei auf oberster Ebene hinzu:

      allprojects {
          repositories {
              google()
          }
      }
    
    

Weitere Informationen zum Maven-Repository von Google

Sonstige Änderungen

  • Das native Debugging mit Android Studio unterstützt keine 32-Bit-Versionen von Windows mehr. Wir haben uns entschieden, uns auf andere Plattformen zu konzentrieren, da diese Plattform nur von sehr wenigen Entwicklern genutzt wird. Wenn Sie 32-Bit-Windows verwenden und nativen Code debuggen möchten, sollten Sie weiterhin Android Studio 2.3 verwenden.
  • Die Basis-IDE wurde auf IntelliJ 2017.1.2 aktualisiert. Dadurch wurden zahlreiche neue Funktionen aus 2016.3 und 2017.1 hinzugefügt, z. B. Refactoring der Java 8-Sprache, Parameterhinweise, semantische Hervorhebung, verschiebbare Haltepunkte und sofortige Ergebnisse bei der Suche.
  • Es wurden viele neue Lint-Prüfungen hinzugefügt.
  • Aktuelle Updates für den Android-Emulator