AndroidX mit Xamarin

Erfahren Sie, wie Sie Xamarin.Android verwenden, um Apps mit AndroidX zu entwickeln.

Bei AndroidX handelt es sich um eine wesentliche Verbesserung der ursprünglichen Android-Unterstützungsbibliothek, die nicht mehr gepflegt und verwaltet wird. Mit AndroidX-Paketen wird die Android-Unterstützungsbibliothek vollständig ersetzt, indem Featureparität und neue Bibliotheken bereitgestellt werden, die Sie in Ihren Android-Anwendungen nutzen können.

AndroidX beinhaltet die folgenden Features:

  • Alle Pakete innerhalb von AndroidX verfügen jetzt über einen einheitlichen Namespace, der mit androidx beginnt. Dies bedeutet, dass alle Pakete der Android-Unterstützungsbibliothek einem entsprechenden androidx.*-Paket zugeordnet sind.
  • androidx-Pakete werden separat verwaltet und aktualisiert. AndroidX-Bibliotheken können also unabhängig voneinander aktualisiert werden.
  • Nach v28 der Android-Unterstützungsbibliothek gibt es keine weiteren Releases mehr. Die gesamte Entwicklung ist stattdessen in androidx enthalten.

AndroidX-Logo

Anforderungen

Um AndroidX-Features in Xamarin-basierten Apps zu verwenden, müssen folgende Voraussetzungen erfüllt sein:

  • Visual Studio – Führen Sie unter Windows ein Update auf Visual Studio 2019, Version 16.4 oder höher, durch. Führen Sie unter macOS ein Update auf Visual Studio 2019 für Mac, Version 8.4 oder höher, durch.
  • Xamarin.Android: Mit Visual Studio muss Xamarin.Android 10.0 oder höher installiert werden (Xamarin.Android wird unter Windows automatisch als Teil der Mobile Entwicklung mit .NET-Workload und als Teil des Visual Studio für Mac-Installationsprogramms installiert).
  • Java Developer Kit: Für die Entwicklung mit Xamarin.Android 10.0 ist JDK 8 erforderlich. Die Microsoft-Distribution von OpenJDK wird automatisch als Teil von Visual Studio installiert.
  • Android SDK – Android SDK API 28 oder höher muss über den Android-SDK-Manager installiert werden.

Erste Schritte

Beginnen Sie Ihre Arbeit mit AndroidX, indem Sie ein beliebiges AndroidX-NuGet-Paket zu Ihrem Android-Projekt hinzufügen. Weitere Informationen zur Installation und Verwendung von Paketen in Visual Studio oder Visual Studio für Mac

Verhaltensänderungen

Da AndroidX eine überarbeitete Version der Android-Unterstützungsbibliothek ist, müssen Änderungen und Migrationsschritte berücksichtigt werden, die sich auf Android-Anwendungen auswirken, die mit der Android-Unterstützungsbibliothek erstellt wurden.

Änderungen bei Paketnamen

Die Paketnamen wurden überarbeitet und geändert. Im Folgenden finden Sie Beispiele für diese Änderungen:

Alt Neu
android.support.** androidx.@
android.design.** com.google.android.material.@
android.support.test.** androidx.test.@
android.arch.** androidx.@
android.arch.persistence.room.** androidx.room.@
android.arch.persistence.** androidx.sqlite.@

Weitere Informationen zu Paketnamen finden Sie in dieser Dokumentation.

Migrationstools

Es gibt drei wichtige Migrationsschritte für Ihre Anwendung, mit denen Sie vertraut sein sollten.

  1. Wenn Ihre Anwendung Namespaces der Android-Unterstützungsbibliothek umfasst und Sie diese Namespaces zu AndroidX-Namespaces migrieren möchten, können Sie in den meisten Szenarien unser IDE-Tool Zu AndroidX migrieren verwenden.

Aktivieren Sie androidX Migrator über Tools > Options > Xamarin > Android Settings in Visual Studio 2019 (Sie können diesen Schritt auf Visual Studio für Mac überspringen).

Aktivieren von AndroidX Migrator

Klicken Sie mit der rechten Maustaste auf Ihr Projekt, und wählen Sie Zu AndroidX migrieren aus.

Migrieren zu AndroidX

Hinweis

In Szenarien, die nicht von diesem Tool abgedeckt werden, müssen Sie manuell einige Änderungen an den Namespaces vornehmen. Wenngleich wir Pakete korrekt zuordnen, sollten Sie sich für die Migration Ihrer Projekte die offiziellen Artefaktzuordnungen und Klassenzuordnungen ansehen.

  1. Wenn Ihre Anwendung Abhängigkeiten umfasst, die nicht zum AndroidX-Namespace migriert wurden, müssen Sie das Paket für die Migration der Android-Unterstützungsbibliothek zu AndroidX verwenden.
  2. Wenn Ihre Anwendung keine Abhängigkeiten umfasst, die eine Migration zu AndroidX-Namespaces erfordern, können Sie sofort die AndroidX-Bibliotheken in NuGet verwenden.

Problembehandlung

  • Bestimmte Architekturpakete in AndroidX führen zu Konflikten mit der Unterstützungsbibliothek. Um dieses Problem zu beheben, sollten Sie die AndroidX-Version dieser Pakete verwenden und die Unterstützungsbibliothek entfernen. Wenn Sie in Ihrem Projekt z.B. auf Xamarin.Android.Arch.Work.Runtime verweisen, führt dies zu einem Konflikt mit den Typen des neu hinzugefügten AndroidX.Work-Pakets.

Zusammenfassung

In diesem Artikel wurde AndroidX vorgestellt und erläutert, wie die neuesten Tools und Pakete für die Xamarin.Android-Entwicklung mit AndroidX installiert und konfiguriert werden. Sie haben erfahren, was genau AndroidX ist. Darüber hinaus enthält dieser Artikel Links zur API-Dokumentation und zu relevanten Themen für Android-Entwickler, die Ihnen den Einstieg in die App-Entwicklung mit AndroidX erleichtern. Außerdem wurden die wichtigsten Unterschiede von AndroidX im Vergleich zur Unterstützungsbibliothek beschrieben, und es wurde auf Probleme hingewiesen, die sich auf vorhandene Apps auswirken können.