AndroidX con Xamarin

Come iniziare a sviluppare app con AndroidX con Xamarin.Android.

AndroidX è un miglioramento importante della libreria di supporto Android originale, che non è più gestita. I pacchetti AndroidX sostituiscono completamente la libreria di supporto Android fornendo parità di funzionalità e nuove librerie che è possibile usare nelle applicazioni Android.

AndroidX include le funzionalità seguenti:

  • Tutti i pacchetti all'interno di AndroidX ora hanno uno spazio dei nomi coerente a partire da androidx. Ciò significa che tutti i pacchetti della libreria di supporto Android eseguono il mapping a un pacchetto corrispondente androidx.* .
  • androidx i pacchetti vengono gestiti e aggiornati separatamente. Ciò significa che è possibile aggiornare le librerie AndroidX indipendentemente l'una dall'altra.
  • A partire dalla versione 28 della libreria di supporto Android, non saranno disponibili altre versioni. Tutto lo sviluppo verrà invece androidx incluso.

AndroidX Logo

Requisiti

L'elenco seguente è necessario per usare le funzionalità AndroidX nelle app basate su Xamarin:

  • Visual Studio : in Windows update to Visual Studio 2019 version 16.4 or later (Aggiornamento di Visual Studio a Visual Studio 2019 versione 16.4 o successiva). In macOS eseguire l'aggiornamento a Visual Studio 2019 per Mac versione 8.4 o successiva.
  • Xamarin.Android - Xamarin.Android 10.0 o versione successiva deve essere installato con Visual Studio (Xamarin.Android viene installato automaticamente come parte del carico di lavoro Sviluppo di dispositivi mobili con .NET in Windows e installato come parte del programma di installazione di Visual Studio per Mac)
  • Java Developer Kit : lo sviluppo di Xamarin.Android 10.0 richiede JDK 8. La distribuzione di Microsoft di OpenJDK viene installata automaticamente come parte di Visual Studio.
  • Android SDK : l'API Android SDK 28 o versione successiva deve essere installata tramite Android SDK Manager.

Operazioni preliminari

È possibile iniziare a usare AndroidX includendo qualsiasi pacchetto NuGet AndroidX all'interno del progetto Android. Altre informazioni sull'installazione e l'uso di un pacchetto in Visual Studio o Visual Studio per Mac

Modifiche del comportamento

Poiché AndroidX è una riprogettazione della libreria di supporto Android, include passaggi di migrazione che influiranno sulle applicazioni Android compilate con la libreria di supporto Android.

Modifica nome pacchetto

I nomi dei pacchetti sono stati modificati tra i pacchetti precedenti e nuovi. Di seguito è riportato un esempio di queste modifiche:

Vecchi Nuovo
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. @

Per altri dettagli sulla denominazione dei pacchetti, vedere la documentazione seguente.

Strumenti di migrazione

Esistono tre passaggi di migrazione da tenere presenti per l'applicazione.

  1. Se l'applicazione include spazi dei nomi della libreria di supporto Android e si vuole eseguirne la migrazione agli spazi dei nomi AndroidX, è possibile usare gli strumenti migrate to AndroidX IDE per gestire la maggior parte degli scenari dello spazio dei nomi.

Abilitare AndroidX Migrat via Strumenti > Opzioni > Xamarin > Android Impostazioni all'interno di Visual Studio 2019 (è possibile ignorare questo passaggio Visual Studio per Mac).

Enable AndroidX Migrator

Fare clic con il pulsante destro del mouse sul progetto ed eseguire la migrazione ad AndroidX.

Migrate To AndroidX

Nota

Sarà necessario apportare alcune modifiche manuali dello spazio dei nomi per gli scenari che lo strumento non copre. Anche se il pacchetto corretto verrà mappato automaticamente, è consigliabile esaminare i mapping ufficiali degli artefatti e i mapping delle classi per facilitare la migrazione del progetto.

  1. Se l'applicazione include eventuali dipendenze di cui non è stata eseguita la migrazione allo spazio dei nomi AndroidX, sarà necessario usare la libreria di supporto Android per il pacchetto di migrazione AndroidX.
  2. Se l'applicazione non include dipendenze che richiedono la migrazione dello spazio dei nomi AndroidX, è possibile usare le librerie AndroidX in NuGet.

Risoluzione dei problemi

  • Alcuni pacchetti di architettura all'interno di AndroidX sono in conflitto con le versioni della libreria di supporto. Per risolvere questo problema, è necessario usare la versione AndroidX di questi pacchetti e rimuovere la versione della libreria di supporto. Ad esempio, se si fa riferimento Xamarin.Android.Arch.Work.Runtime al progetto, sarà in conflitto con i tipi del pacchetto appena aggiunto AndroidX.Work .

Riepilogo

Questo articolo ha introdotto AndroidX e spiegato come installare e configurare gli strumenti e i pacchetti più recenti per lo sviluppo Xamarin.Android con AndroidX. Ha fornito una panoramica di ciò che AndroidX è. Sono inclusi collegamenti alla documentazione dell'API e agli argomenti per sviluppatori Android per iniziare a creare app con AndroidX. Sono stati inoltre evidenziati gli argomenti più importanti relativi al comportamento di AndroidX e alla risoluzione dei problemi che potrebbero influire sulle app esistenti.