AndroidX on merkittävä parannus alkuperäiseen Android-tukikirjastoon.
Se tarjoaa androidx.*
pakettikirjastot, jotka on erotettu alustan API:sta.Tämä tarkoittaa, että se tarjoaa taaksepäin yhteensopivuuden ja sitä päivitetään useammin kuin Android-alustaa.
Yleisiä kysymyksiä
Miten voin siirtää olemassa olevan sovellukseni, laajennukseni tai host-editoitavan moduuliprojektini AndroidX:ään?
Tarvitset Android Studio 3.2:n tai uudemman version. Jos sinulla ei ole sitä asennettuna,voit ladata uusimman versionAndroid Studion sivustolta.
- Avaa Android Studio.
- Valitse Avaa olemassa oleva Android Studio -projekti.
- Avaa
android
-hakemisto sovelluksessasi. - Valitse Avaa olemassa oleva Android Studio -projekti.
- Avaa
android
-hakemisto sovelluksessasi. - Odota, että projektin synkronoiminen onnistuu. (Tämä tapahtuu automaattisesti, kun avaat projektin, mutta jos näin ei tapahdu,valitse File (Tiedosto) -valikosta Sync Project with Gradle Files (Synkronoi projekti Gradle-tiedostojen kanssa).
- Valitse Migrate to AndroidX (Siirrä AndroidX:ään) Refactor (Muokkaus) -valikosta.
- Mikäli sinua pyydetään varmuuskopioimaan projekti ennen kuin jatkat, merkitse valintaruutu Backup project as Zip file (Varmuuskopioi projekti Zip-tiedostona) ja valitse sitten Migrate. Tallenna lopuksi zip-tiedosto haluamaasi paikkaan.
- Refaktoroinnin esikatselu näyttää luettelon muutoksista. Napsauta lopuksi Do Refactor:
- Se on valmis! Siirsit projektisi onnistuneesti AndroidX:ään.
Viimeiseksi, jos olet siirtänyt lisäosan, julkaise uusi AndroidX-versio pubiin ja päivitä CHANGELOG.md
:si ilmoittaaksesi, että tämä uusi versio on yhteensopiva AndroidX:n kanssa.
Entä jos en pysty käyttämään Android Studiota?
Voit luoda uuden projektin Flutter-työkalun avulla ja siirtää Dart-koodin ja -varastot sitten uuteen projektiin.
Luoaksesi uuden projektin suorita:
flutter create -t <project-type> <new-project-path>
Lisää sovellukseen
Jos Flutter-projektisi on moduulityyppinen lisättäväksi olemassa olevaan Android-sovellukseen ja sisältää .android
-hakemiston, lisää seuraava rivi pubspec.yaml
:
module: ... androidX: true # Add this line.
Viimeiseksi suorita flutter clean
.
Jos moduulisi sisältää sen sijaan android
-hakemiston, noudata edellisen kappaleen vaiheita.
Mistä tiedän, käyttääkö projektini AndroidX:ää?
Flutterin versiosta v1.12.13 alkaen uudet projektit, jotka on luotu flutter create -t <project-type>
:llä, käyttävät oletuksena AndroidX:ää.
Projektit, jotka on luotu ennen tätä Flutter-versiota, eivät saa olla riippuvaisia mistään vanhasta build-artefaktista tai vanhasta Support Library -luokasta.
Sovellus- tai moduuliprojektissa tiedoston android/gradle.properties
tai .android/gradle.properties
on sisällettävä:
android.useAndroidX=trueandroid.enableJetifier=true
Entä jos en siirrä sovellustani tai moduulejani AndroidX:n käyttöön?
Sovelluksesi voi edelleen toimia. AndroidX:n ja Support-artefaktien yhdistämistä ei kuitenkaan yleensä suositella, koska se voi johtaa riippuvuuskonflikteihin tai muunlaisiin Gradle-häiriöihin. Tämän seurauksena, kun yhä useammat liitännäiset siirtyvät AndroidX:ään,Androidin ydinkirjastoista riippuvat liitännäiset aiheuttavat todennäköisesti rakennusvirheitä.
Entä jos sovellukseni siirretään AndroidX:ään, mutta kaikkia käyttämiäni liitännäisiä ei ole?
Flutter-työkalu käyttää Jetifieriä siirtämään automaattisesti tukikirjastoa käyttävät Flutter-liitännäiset AndroidX:ään, joten voit käyttää samoja liitännäisiä, vaikka niitä ei olisikaan vielä siirretty AndroidX:ään.
Minulla on ongelmia AndroidX:ään siirtämisessä
Avaa ongelma GitHubissa ja lisää ongelman otsikkoon.