AndroidX è un importante miglioramento della libreria di supporto Android originale.
Fornisce le androidx.*
librerie di pacchetti, disaggregate dalle API della piattaforma.Questo significa che offre compatibilità all’indietro e viene aggiornato più frequentemente della piattaforma Android.
Domande comuni
Come faccio a migrare il mio progetto di app, plugin o modulo editabile su AndroidX?
Hai bisogno di Android Studio 3.2 o superiore. Se non lo hai installato, puoi scaricare l’ultima versione dal sito di Android Studio.
- Apri Android Studio.
- Seleziona Apri un progetto Android Studio esistente.
- Apri la directory
android
della tua app. - Aspetta che il progetto sia stato sincronizzato correttamente. (Questo avviene automaticamente una volta aperto il progetto, ma se non succede, seleziona Sync Project with Gradle Files dal menu File).
- Seleziona Migrate to AndroidX dal menu Refactor.
- Se ti viene chiesto di fare un backup del progetto prima di procedere, seleziona Backup project as Zip file, poi clicca Migrate. Infine, salva il file zip nella posizione che preferisci.
- L’anteprima del refactoring mostra l’elenco delle modifiche. Infine, clicca su Do Refactor:
- Ecco fatto! Hai migrato con successo il tuo progetto ad AndroidX.
Infine, se hai migrato un plugin, pubblica la nuova versione di AndroidX su pub e aggiorna il tuo CHANGELOG.md
per indicare che questa nuova versione è compatibile con AndroidX.
Cosa succede se non posso usare Android Studio?
Puoi creare un nuovo progetto usando lo strumento Flutter e poi spostare il codice Dart e gli asset nel nuovo progetto.
Per creare un nuovo progetto esegui:
flutter create -t <project-type> <new-project-path>
Add to App
Se il tuo progetto Flutter è un tipo di modulo da aggiungere a un’app Android esistente, e contiene una directory .android
, aggiungi la seguente linea a pubspec.yaml
:
module: ... androidX: true # Add this line.
Infine, esegui flutter clean
.
Se il tuo modulo contiene invece una directory android
, allora segui i passi nella sezione precedente.
Come faccio a sapere se il mio progetto sta usando AndroidX?
A partire da Flutter v1.12.13, i nuovi progetti creati con flutter create -t <project-type>
usano AndroidX per default.
I progetti creati prima di questa versione Flutter non deve dipendere da qualsiasi artefatto di costruzione vecchio o vecchia classe Support Library.
In un progetto di app o modulo, il file android/gradle.properties
o .android/gradle.properties
deve contenere:
android.useAndroidX=trueandroid.enableJetifier=true
Che cosa succede se non migrare la mia app o modulo per AndroidX?
La tua app può continuare a lavorare. Tuttavia, combinare AndroidX e Support artifactsis generalmente non è raccomandato perché può portare a conflitti di dipendenza o altri tipi di fallimenti di Gradle. Di conseguenza, man mano che più plugin migrano ad AndroidX, è probabile che i plugin che dipendono dalle librerie di base di Android causino errori di compilazione.
Cosa succede se la mia app è migrata ad AndroidX, ma non tutti i plugin che uso?
Lo strumento Flutter usa Jetifier per migrare automaticamente i plugin Flutter che usano la libreria di supporto ad AndroidX, così puoi usare gli stessi plugin anche se non sono ancora stati migrati ad AndroidX.
Sto avendo problemi a migrare ad AndroidX
Apri un problema su GitHub e aggiungi al titolo del problema.