AndroidX Migracja

AndroidX jest głównym ulepszeniem oryginalnej Android Support Library.

Dostarcza androidx.* biblioteki pakietów, unbundled od API platformy.Oznacza to, że oferuje kompatybilność wsteczną i jest aktualizowana częściej niż platforma Android.

Wspólne pytania

Jak zmigrować moją istniejącą aplikację, wtyczkę lub projekt modułu edytowalnego do AndroidX?

Będziesz potrzebował Android Studio 3.2 lub nowszego. Jeśli nie masz go zainstalowanego, możesz pobrać najnowszą wersję z witrynyAndroid Studio.

  1. Otwórz Android Studio.
  2. Wybierz Otwórz istniejący projekt Android Studio.
  3. Otwórz katalog android w swojej aplikacji.
  4. Poczekaj, aż projekt zostanie pomyślnie zsynchronizowany. (Dzieje się to automatycznie po otwarciu projektu, ale jeśli nie, wybierz Sync Project with Gradle Files z menu File).
  5. Wybierz Migrate to AndroidX z menu Refactor.
  6. Jeśli zostaniesz poproszony o utworzenie kopii zapasowej projektu przed kontynuowaniem, zaznacz Backup projektu jako plik Zip, a następnie kliknij Migrate. Na koniec zapisz plik zip w preferowanej lokalizacji. Wybierz kopię zapasową projektu jako plik zip
  7. Podgląd refaktoryzacji pokazuje listę zmian. Na koniec kliknij przycisk Wykonaj refaktoryzację: Animacja przejścia strony od dołu do góry w systemie Android
  8. To jest to! Pomyślnie zmigrowałeś swój projekt do AndroidX.

Na koniec, jeśli zmigrowałeś wtyczkę, opublikuj nową wersję AndroidX do pubu i zaktualizuj swój CHANGELOG.md, aby wskazać, że ta nowa wersja jest zgodna z AndroidX.

Co, jeśli nie mogę korzystać z Android Studio?

Możesz utworzyć nowy projekt za pomocą narzędzia Flutter, a następnie przenieść kod Dart i zasoby do nowego projektu.

Aby utworzyć nowy projekt uruchom:

flutter create -t <project-type> <new-project-path>

Add to App

Jeśli twój projekt Flutter jest typu modułowego do dodania do istniejącej aplikacji Android, icontains a .android directory, dodaj następującą linię do pubspec.yaml:

 module: ... androidX: true # Add this line.

Finally, run flutter clean.

Jeśli twój moduł zawiera katalog android zamiast tego, wtedy postępuj zgodnie z krokami w poprzedniej sekcji.

Jak mogę wiedzieć czy mój projekt używa AndroidX?

Począwszy od Flutter v1.12.13, nowe projekty utworzone z flutter create -t <project-type>używają AndroidX domyślnie.

Projekty stworzone przed tą wersją Fluttera nie mogą zależeć od klasy anyold build artifact orrold Support Library.

W projekcie aplikacji lub modułu, plik android/gradle.properties lub .android/gradle.propertiesmusi zawierać:

android.useAndroidX=trueandroid.enableJetifier=true

Co jeśli nie zmigruję mojej aplikacji lub modułu do AndroidX?

Twoja aplikacja może nadal działać. Jednak łączenie AndroidX i Support artefactsis ogólnie nie jest zalecane, ponieważ może to spowodować konflikty zależności lub inne rodzaje awarii Gradle. W rezultacie, gdy więcej wtyczek migruje do AndroidX, wtyczki zależne od bibliotek rdzeniowych Androida prawdopodobnie spowodują awarie kompilacji.

Co jeśli moja aplikacja zostanie zmigrowana do AndroidX, ale nie wszystkie wtyczki, których używam?

Narzędzie Flutter używa Jetifier do automatycznej migracji wtyczek Flutter używających biblioteki Support Library do AndroidX, więc możesz używać tych samych wtyczek nawet jeśli nie zostały jeszcze zmigrowane do AndroidX.

Mam problemy z migracją do AndroidX

Otwórz problem na GitHub i dodaj do tytułu problemu.

Dodaj komentarz