Jetifier

Oddzielne narzędzie Jetifier przenosi biblioteki zależne od bibliotek pomocy do korzystać z odpowiadających im pakietów AndroidaX. Narzędzie to umożliwia przeniesienie z pojedynczej biblioteki, zamiast korzystać z wtyczki Androida do obsługi Gradle w pakiecie dzięki Android Studio.

Zainstaluj Jetifier

Aby zainstalować Jetifier, pobierz plik ZIP plik i wyodrębnić. Na urządzeniu musi być zainstalowana aplikacja Java w wersji 1.8 lub nowszej.

Wykorzystanie

Aby przetworzyć bibliotekę, przekaż ścieżkę do bieżącej biblioteki oraz ścieżkę do biblioteki który może utworzyć narzędzie. Jetifier obsługuje pliki JAR, AAR i ZIP włącznie z zagnieżdżonymi archiwami.

./jetifier-standalone -i <source-library> -o <output-library>

Opcje

W tabeli poniżej znajdziesz dostępne opcje poleceń narzędzia Jetifier:

Option Wymagany? Opis
-i, --input <path> tak Ścieżka do biblioteki wejściowej (JAR, AAR lub ZIP).
-o, --output <path> tak Ścieżka do pliku wyjściowego. Jeśli plik już istnieje, Jetifier go zastąpi.
-c, --config <path> nie Ścieżka do opcjonalnego niestandardowego pliku konfiguracji.
-l, --log <level> nie Poziom rejestrowania. Dozwolone wartości to:
  • błąd
  • ostrzeżenie
  • informacje
  • Wyczerpująco
. Jeśli nie podasz żadnej wartości, domyślnie będzie to „warning”.
-r nie Działanie w trybie odwrotnym („de-jetyification”).
-rebuildTopOfTree,
--rebuildTopOfTree.
nie Utwórz ponownie plik ZIP dystrybucji Maven zgodnie z wygenerowany plik POM.
Jeśli jest ustawione, wszystkie biblioteki przepisane , przyjmuje się, że należą do Biblioteki pomocy. Nie jest potrzebny do filtrowania e-maili.
-s, --strict nie Nie włączaj kreacji zastępczej, gdy brakuje reguł. zgłoś błędy .
-stripSignatures,
--stripSignatures
nie Nie zgłaszaj błędu, gdy: stymulowanie podpisanej biblioteki; usuwanie plików podpisu .
-t, -timestamp <arg> nie Zasady dotyczące sygnatur czasowych, które mają być używane w przypadku zarchiwizowanych wpisów jako czasu ich zmodyfikowania. Wartości: KeepPrevious (domyślnie) od początku epoki czy teraz.

Przykład

Ten przykład uruchamia narzędzie w bibliotece libraryToProcess.aar w w bieżącym katalogu i zapisuje dane wyjściowe w result.aar w tym samym katalogu:

./jetifier-standalone -i libraryToProcess.aar -o result.aar

Zastosowanie

Jetifier przenosi odwołania do Javy, XML, POM i ProGuard wskazujące android.support.* pakiety, zmieniając je tak, aby wskazywały odpowiednie Liczba pakietów: androidx.*.

Symbole wieloznaczne ProGuard dla android.support.* nie zawsze są mapowane bezpośrednio na androidx.*, Jetifier tworzy wszystkie odpowiednie zamienniki.

Jeśli w pakiecie android.support.* znajduje się typ, który nie pochodzi z żadnego Obsługa artefaktu biblioteki, Jetifier nadal migruje ten typ, o ile istnieje dla danego obiektu. Nie ma jednak gwarancji, że migracja się uda, ponieważ mogą nie być wystarczająco ogólne, by uwzględnić wszystkie typy niestandardowe.

Zaawansowane użycie

Jetifier obsługuje niektóre zaawansowane przypadki użycia.

Tryb odwrotny

Jeśli przekażesz flagę -r, narzędzie będzie działać w trybie odwrotnym. W tym trybie narzędzie konwertuje interfejsy API AndroidaX na ich odpowiedniki w Bibliotece pomocy. Tryb odwrotny jest przydatne, jeśli rozwijasz korzystające z interfejsów API AndroidX, ale muszą też rozpowszechniać wersje korzystające z z biblioteki pomocy.

Przykład

Ten przykład uruchamia narzędzie w trybie wstecznym w bibliotece myAndroidXLib.aar w bieżącym katalogu i zapisuje dane wyjściowe w supportLibVersion.aar w tym samym katalogu:

./jetifier-standalone -r -i myAndroidXLib.aar -o supportLibVersion.aar

Niestandardowy plik konfiguracyjny

Narzędzie Jetifier używa pliku konfiguracyjnego do mapowania klas Biblioteki pomocy na swoje AndroidX. W razie potrzeby możesz utworzyć niestandardowy plik konfiguracyjny, zmienia to mapowanie. Możesz nawet dodać do mapowania nowe klasy, które nie są członków Biblioteki pomocy. Możesz na przykład zmienić mapowania w celu zastąpienia jednej z Twoich zajęć następną klasą zapisaną do użycia AndroidX

Aby użyć niestandardowego pliku konfiguracyjnego:

  1. Wyodrębnij plik default.generated.config z narzędzia jetifier-core-*.jar plik i go zapisz.
  2. Wprowadź odpowiednie zmiany w swojej kopii pliku konfiguracyjnego.
  3. Przekaż plik do narzędzia z flagą -c.

Na przykład:

./jetifier-standalone -i libraryToProcess.aar -o result.aar -c myCustomMapping.config