Versionshinweise zu Android Studio 3.4 (April 2019)

Android Studio 3.4 ist eine Hauptversion mit verschiedenen neuen Funktionen und Verbesserungen.



IntelliJ IDEA 2018.3.4


  • Der Android Studio-Kern wurde mit Verbesserungen von IntelliJ IDEA ab Version 2018.3.4 aktualisiert

Android Gradle Plugin 3.4.0


  • Informationen zum neuen Android Gradle-Plugin 3.4.0 finden Sie in den Versionshinweisen

Neuer Projektstrukturdialog


  • Das neue Dialogfeld "Projektstruktur" (PSD) erleichtert das Aktualisieren von Abhängigkeiten und das Konfigurieren verschiedener Aspekte Ihres Projekts, z. B. Module, Erstellungsoptionen, Signaturkonfigurationen und Erstellungsvariablen
  • Sie können die PSD öffnen, indem Sie im Menü "Datei> Projektstruktur" auswählen. Sie können die PSD auch über Strg + Umschalt + Alt + S unter Windows und Linux oder Befehl + öffnen. (Semikolon) unter macOS. Das Folgende ist eine Beschreibung der PSD-Innovationen und -Updates.

Variablen


  • In diesem Abschnitt können Sie Build-Variablen erstellen und verwalten. Geben Sie beispielsweise an, welche Version der entsprechenden Abhängigkeiten für das gesamte Projekt verwendet werden soll

    Bild


    • Schnelle Übersicht und Bearbeitung von Build-Variablen, die bereits in den Gradle-Build-Skripten Ihres Projekts vorhanden sind
    • Hinzufügen neuer Build-Variablen zur Projekt- oder Modulebene direkt aus dem Dialogfeld "Projektstruktur"
    • ANMERKUNG: Wenn vorhandene Build-Konfigurationsdateien Werte über komplexe Groovy-Skripts angeben, können Sie diese Werte möglicherweise nicht über das Dialogfeld "Projektstruktur" bearbeiten. Darüber hinaus können Sie in Kotlin geschriebene Build-Dateien nicht über das Dialogfeld "Projektstruktur" bearbeiten


Module


  • Konfigurieren Sie die Eigenschaften, die für alle in den Modulen vorhandenen Erstellungsoptionen gelten, oder fügen Sie Ihrem Projekt im Abschnitt Module neue Module hinzu. Hier können Sie beispielsweise die Eigenschaft defaultConfig konfigurieren oder die Signaturkonfigurationen verwalten

Abhängigkeiten


  • Überprüfen und anzeigen Sie jedes Abhängigkeitsdiagramm des Abhängigkeitsdiagramms Ihres Projekts, das Gradle während der Projektsynchronisierung erstellt hat, indem Sie die folgenden Schritte ausführen:


    1. Wählen Sie im linken Bereich der PSD "Abhängigkeiten" aus.
    2. Wählen Sie im Bedienfeld Module das Modul aus, für das Sie die Abhängigkeiten anzeigen möchten
    3. Öffnen Sie auf der rechten Seite der PSD das Fenster "Gelöste Abhängigkeiten" wie unten gezeigt

      Bild

  • Sie können Abhängigkeiten auch schnell finden und zu Ihrem Projekt hinzufügen, indem Sie das Modul auswählen und auf die Schaltfläche "+" im Abschnitt "Deklarierte Abhängigkeiten" klicken und dann den Typ der Abhängigkeit auswählen, die Sie hinzufügen möchten


  • Abhängig von der Art der Abhängigkeit, die Sie auswählen, sollte ein Dialogfeld ähnlich dem unten gezeigten angezeigt werden, in dem Sie die Abhängigkeit zum Modul hinzufügen können

    Bild



Montagemöglichkeiten


  • In diesem Abschnitt der PSD werden Build-Optionen und Variationen ('Produktvarianten') für jedes Modul in Ihrem Projekt erstellt und konfiguriert. Sie können Manifestvorlagen ('Platzhalter'), ProGuard-Dateien hinzufügen und Signaturschlüssel usw. zuweisen.

    Bild

Tipps


  • Sie können die vorgeschlagenen Abhängigkeitsaktualisierungen für Ihr Projekt und die Erstellungsoptionen im Abschnitt "Vorschläge" sehen, wie unten gezeigt

    Bild

Neuer 'Ressourcenmanager'


  • 'Resource Manager' ist ein neues Tool zum Importieren, Erstellen, Verwalten und Verwenden der Ressourcen Ihrer Anwendung. Sie können dieses Tool über das Menü "Ansicht> Tool Windows> Ressourcenmanager" öffnen. Mit dem Ressourcenmanager können Sie Folgendes tun:

    Bild


    • Ressourcen visualisieren: Sie können eine Vorschau von Zeichnungen, Farben und Layouts anzeigen, um schnell die richtige Ressource zu finden
    • Massenimport : Sie können mehrere zeichnbare Assets gleichzeitig importieren, indem Sie sie einfach in den Ressourcenmanager oder über den Assistenten zum Zeichnen von Drawables ziehen. Um auf den Assistenten zuzugreifen, klicken Sie auf die Schaltfläche "+" in der oberen linken Ecke des Fensters und wählen Sie dann "Drawables importieren" aus der Dropdown-Liste
    • Konvertieren von SVG-Dateien in VectorDrawables: Mit dem Assistenten zum Importieren von Drawables können Sie Ihre SVG-Bilder in VerctorDrawables konvertieren
    • Drag & Drop-Assets: Im Fenster "Ressourcenmanager" können Sie Drawables in Ihre Design- und XML-Widgets des Layout-Editors ziehen ("Layout-Editor").
    • Alternative Versionen von Widgets: Jetzt können Sie alternative Versionen Ihrer Ressourcen haben, indem Sie im Fenster "Tool" auf die Ressource doppelklicken. Sie sehen die verschiedenen Versionen, die Sie erstellt haben, und welche Qualifikationsmerkmale sie enthalten.
    • Kachel- oder Listenanzeige : Sie können die Anzeige im Visualisierungsfenster Ihrer Ressourcen anhand ihres unterschiedlichen Layouts ändern

  • Weitere Informationen finden Sie im Handbuch zum Verwalten von App-Ressourcen .



Überprüfen der Build-IDs beim Profilieren und Debuggen von APKs


  • Wenn Sie die "Debugging-Symboldateien" der gemeinsam genutzten .so-Bibliotheken in Ihrem APK bereitstellen, überprüft Android Studio, ob die Build-ID der "Debugging-Symboldateien" mit der Build-ID der .so-Bibliotheken im APK übereinstimmt
  • Wenn Sie native Bibliotheken in Ihrer APK mit Build-ID sammeln, überprüft Android Studio, ob die Build-ID Ihrer "Symboldateien" und die Build-ID Ihrer nativen Bibliotheken übereinstimmen, und setzt die "Symboldateien" zurück, wenn keine Übereinstimmung vorliegt. Wenn Sie nicht mit der Build-ID erstellen, kann die Angabe falscher "Symboldateien" zu Problemen beim Debuggen führen

R8 ist standardmäßig aktiviert


  • R8 kombiniert Desugaring, Komprimierung, Verschleierung, Optimierung und Dexing in einem Schritt, was zu einer spürbaren Leistungsverbesserung führt. R8 wurde im Android Gradle-Plugin 3.3.0 eingeführt und ist jetzt standardmäßig für Anwendungen und Android-Bibliotheksprojekte mit dem Plugin Version 3.4.0 oder höher aktiviert


  • Das Bild unten zeigt den Kompilierungsprozess vor R8

    Bild


  • Mit R8 werden nun Desugaring, Komprimierung, Verschleierung, Optimierung und Dexing (D8) in einem Schritt ausgeführt, wie unten gezeigt

    Bild


  • R8 funktioniert mit Ihren vorhandenen ProGuard-Regeln, sodass Sie keine Maßnahmen ergreifen müssen, um R8 nutzen zu können. Da sich diese Technologie von ProGuard unterscheidet, das speziell für Android-Projekte entwickelt wurde, besteht die Komprimierung und Optimierung möglicherweise darin, Code zu entfernen, den ProGuard nicht löscht. In dieser unwahrscheinlichen Situation müssen Sie möglicherweise zusätzliche Regeln hinzufügen, um diesen Code in der Endmontage zu speichern


  • Wenn Sie Probleme mit R8 haben, lesen Sie die häufig gestellten Fragen zur R8-Kompatibilität , um zu überprüfen, ob es eine vorgefertigte Lösung gibt. Wenn die Lösung noch nicht dokumentiert wurde, melden Sie bitte einen Fehler . Sie können R8 deaktivieren, indem Sie der Datei gradle.properties Ihres Projekts eine der folgenden Anweisungen hinzufügen:

     <i> # R8 nur für Android Library-Module deaktivieren </ i>
     android.enableR8.libraries = false </ p>
     <p> <i> # deaktiviere R8 für alle Module </ i>
     android.enableR8 = false
    

  • HINWEIS: Wenn Sie für den angegebenen Assembly-Typ in der Datei build.gradle Ihres App-Moduls false für useProguard festlegen, verwendet das Android Gradle-Plugin R8, um den Anwendungscode für diesen Assembly-Typ zu komprimieren, unabhängig davon, ob R8 in der Datei gradle.properties Ihres Projekts deaktiviert ist




  • Alle von der Navigationskomponente unterstützten Typen werden jetzt im Navigationseditor unterstützt. Weitere Informationen zu unterstützten Typen finden Sie unter Daten zwischen Zielen übergeben

Verbesserungen im Layout-Editor


  • Das Bedienfeld "Attribute" im Layout-Editor wurde auf eine Seite mit Abschnitten vereinfacht, die Sie erweitern können, um die gewünschten Attribute zu konfigurieren. Das Attributfenster enthält außerdem die folgenden Aktualisierungen:


    • Im Abschnitt Neue deklarierte Attribute werden die in der Layoutdatei angegebenen Attribute aufgelistet und Sie können schnell neue hinzufügen
    • Das Fenster "Attribute" ist jetzt auch mit einem Indikator neben jedem Attribut ausgestattet, das gefüllt wird, wenn der Attributwert eine Ressource ist
    • Jetzt werden Attribute mit Fehlern und Warnungen hervorgehoben. Eine rote Markierung zeigt Fehler an (z. B. wenn Sie falsche Platzierungswerte verwenden), und eine orange Markierung zeigt Warnungen an (z. B. wenn Sie fest codierte Werte verwenden).


Neue Aktionstipps zum schnellen Importieren von Abhängigkeiten


  • Wenn Sie bestimmte Jetpack- und Firebase-Klassen in Ihrem Code verwenden, empfehlen neue Aktionstipps, die erforderlichen Abhängigkeiten der Gradle-Bibliothek zu Ihrem Projekt hinzuzufügen, sofern diese noch nicht hinzugefügt wurden. Wenn Sie beispielsweise zum ersten Mal auf die WorkManager-Klasse verweisen, benötigen Sie die Abhängigkeit android.arch.work:work-runtime. Mit dem Aktionshinweis können Sie sie mit einem Klick hinzufügen, wie unten gezeigt

    Bild
  • insbesondere seit Jetpack wird in separaten Paketen dargestellt (was die Verwaltung und Aktualisierung erleichtert). Mit der Aktionsverknüpfung können Sie schnell nur die Abhängigkeiten hinzufügen, die für die von Ihnen verwendeten Jetpack-Komponenten erforderlich sind

3.4.0 bekannte Probleme


  • Die Profilerstellung ist deaktiviert, wenn Sie Ihre Anwendung auf Geräten mit Android Q Beta bereitstellen
  • Wenn eine Datenbindungsbibliothek verwendet wird, kann LiveDataListener.onChanged () mit einer NullPointerException fallen. Eine Lösung für dieses Problem ist in Android Studio 3.4.1 enthalten und bereits in der neuesten Vorschau-Version von Android Studio 3.5 verfügbar (siehe Fehler 122066788 ).

Source: https://habr.com/ru/post/de448860/


All Articles