AndroidX az eredeti Android Support Library jelentős fejlesztése.
A platform API-tól függetlenített androidx.*
csomagkönyvtárakat biztosít.Ez azt jelenti, hogy visszafelé kompatibilitást kínál, és gyakrabban frissül, mint az Android platform.
Gyakori kérdések
Hogyan migrálhatom a meglévő alkalmazásomat, bővítményemet vagy host által szerkeszthető modulprojektemet az AndroidX-re?
A Android Studio 3.2 vagy újabb verzióra lesz szüksége. Ha nincs telepítve,letöltheti a legújabb verziót azAndroid Studio oldaláról.
- Nyissa meg az Android Studio-t.
- Válassza a Meglévő Android Studio projekt megnyitása opciót.
- Nyissa meg a
android
könyvtárat az alkalmazásán belül. - Várjon, amíg a projekt sikeresen szinkronizálódik. (Ez automatikusan megtörténik, amint megnyitja a projektet, de ha nem, válassza a File menüből a Sync Project with Gradle Files parancsot).
- A Refactor menüből válassza a Migrate to AndroidX parancsot.
- Ha a folytatás előtt a projekt biztonsági mentésére kérik, jelölje be a Backup project as Zip file, majd kattintson a Migrate gombra. Végül mentse a zip fájlt a kívánt helyre.
- A refaktorálás előnézetben megjelenik a változások listája. Végül kattintson a Do Refactor gombra:
- Ez az! Sikeresen áttelepítette a projektjét AndroidX-re.
Végül, ha egy bővítményt migrált, tegye közzé az új AndroidX-verziót a pubban, és frissítse a CHANGELOG.md
-ját, hogy jelezze, ez az új verzió kompatibilis az AndroidX-szel.
Mi van, ha nem tudom használni az Android Studio-t?
Létrehozhat egy új projektet a Flutter eszközzel, majd a Dart kódot ésaz eszközöket áthelyezheti az új projektbe.
Az új projekt létrehozásához futtassa:
flutter create -t <project-type> <new-project-path>
Add to App
Ha a Flutter projekt egy meglévő Android alkalmazáshoz hozzáadható modul típusú, és tartalmaz egy .android
könyvtárat, adja hozzá a következő sort a pubspec.yaml
-hez:
module: ... androidX: true # Add this line.
Végül futtassa a flutter clean
.
Ha a modulja ehelyett egy android
könyvtárat tartalmaz, akkor kövesse az előző szakaszban leírt lépéseket.
Honnan tudom, hogy a projektem AndroidX-et használ-e?
A Flutter v1.12.13-tól kezdve a flutter create -t <project-type>
el létrehozott új projektek alapértelmezés szerint AndroidX-et használnak.
Az ezt a Flutter verziót megelőzően létrehozott projektek nem függhetnek semmilyen régi build artifacttól vagy régi Support Library osztálytól.
Egy alkalmazás- vagy modulprojektben a android/gradle.properties
vagy .android/gradle.properties
fájlnak tartalmaznia kell:
android.useAndroidX=trueandroid.enableJetifier=true
Mi van, ha nem migrálom az alkalmazásomat vagy modulomat AndroidX-re?
Az alkalmazása továbbra is működhet. Az AndroidX és a Support artifacts kombinálása azonban általában nem ajánlott, mert függőségi konfliktusokhoz vagy másfajta Gradle hibákhoz vezethet. Ennek eredményeképpen, ahogy egyre több bővítmény áttér az AndroidX-re,az Android core könyvtáraktól függő bővítmények valószínűleg build hibákat fognak okozni.
Mi van, ha az alkalmazásom áttér az AndroidX-re, de nem az összes általam használt bővítményt?
A Flutter eszköz a Jetifier segítségével automatikusan áttelepíti a támogató könyvtárat használó Flutter bővítményeket az AndroidX-re, így ugyanazokat a bővítményeket akkor is használhatja, ha azok még nem lettek áttelepítve az AndroidX-re.
Problémáim vannak az AndroidX-re való áttelepítéssel
Open an issue on GitHub and add to the title of the issue.