Getti d'acqua

Lo strumento Jetifier autonomo esegue la migrazione delle librerie dipendenti dalla libreria di supporto si basano invece sui pacchetti AndroidX equivalenti. Lo strumento consente di eseguire la migrazione singola libreria direttamente invece di utilizzare il plug-in Android Gradle in bundle con Android Studio.

Installa Jetifier

Per installare Jetifier, scarica il file ZIP file ed estrarlo. Sul dispositivo deve essere installato Java versione 1.8 o successiva.

Utilizzo

Per elaborare una libreria, passa il percorso alla libreria corrente e il percorso alla di output che lo strumento dovrebbe creare. Jetifier supporta JAR, AAR e ZIP inclusi gli archivi nidificati.

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

Opzioni

Nella tabella seguente sono elencate le opzioni disponibili per i comandi dello strumento Jetifier:

Opzione Obbligatorio? Descrizione
-i <path> --input Percorso della libreria di input (JAR, AAR o ZIP).
-o <path> --output Percorso del file di output. Se il file esiste già, Jetifier la sovrascrive.
-c <path> --config no Percorso del file di configurazione personalizzato facoltativo.
-l <level> --log no Livello di registrazione. I valori consentiti sono:
  • errore
  • avviso
  • info
  • dettagliato
di Gemini Advanced. Se non specificato, il valore predefinito è "avviso".
-r no Funziona in modalità inversa ("de-jetification").
-rebuildTopOfTree,
--rebuildTopOfTree:
no Ricrea il file ZIP della distribuzione Maven in base al generato il file POM.
Se impostato, tutte le librerie riscritte si suppone che facciano parte della Libreria di supporto. Non necessaria per la ricarica.
-s, --strict no Non eseguire il fallback quando mancano regole; genera errori .
-stripSignatures,
--stripSignatures
no Non generare un errore quando rimozione di una biblioteca firmata; rimuovere i file delle firme .
-t <arg> -timestamp no Criterio di timestamp da utilizzare per l'attributo voci archiviate come data e ora di modifica. Valori: keepPrevious (predefinito) o adesso.

Esempio

Nell'esempio seguente l'utilità viene eseguita sulla libreria libraryToProcess.aar in della directory corrente e scrive l'output in result.aar directory:

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

Note sull'utilizzo

Jetifier esegue la migrazione dei riferimenti Java, XML, POM e ProGuard che puntano a android.support.* pacchetti, modificandoli in modo che puntino ai corrispondenti androidx.* di pacchetti.

Poiché i caratteri jolly ProGuard per android.support.* non sempre vengono mappati direttamente a androidx.* pacchetti, Jetifier produce tutte le sostituzioni idonee.

Se in un pacchetto android.support.* esiste un tipo che non proviene da nessun Supporta l'artefatto della libreria, Jetifier esegue comunque la migrazione del tipo purché sia presente mappatura possibile. Tuttavia, il funzionamento di questa migrazione non è garantito in quanto potrebbero non essere regole di mappatura abbastanza generali da coprire tutti i tipi di personalizzazione.

Utilizzo avanzato

L'utilità Jetifier supporta alcuni casi d'uso avanzati.

Modalità inversa

Se passi il flag -r, l'utilità viene eseguita in modalità inversa. In questa modalità, converte le API AndroidX negli equivalenti Support Library. Modalità inversa è utile se stai sviluppando che usano le API AndroidX, ma che devono anche distribuire versioni che usano la Libreria di supporto.

Esempio

Nell'esempio seguente l'utilità viene eseguita in modalità inversa nella libreria myAndroidXLib.aar nella directory corrente e scrive l'output in supportLibVersion.aar nella stessa directory:

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

File di configurazione personalizzato

Lo strumento Jetifier usa un file di configurazione per mappare le classi della Libreria di assistenza ai propri Equivalenti AndroidX. Se necessario, puoi creare un file di configurazione la modifica della mappatura. Puoi anche aggiungere alla mappatura nuove classi che non sono membri effettivamente della Libreria di supporto. Ad esempio, potresti modificare per sostituire una delle tue classi con una classe successiva scritta da usare AndroidX.

Per utilizzare un file di configurazione personalizzato:

  1. Estrai il file default.generated.config dalla cartella jetifier-core-*.jar file e salvalo.
  2. Apporta le modifiche necessarie alla tua copia del file di configurazione.
  3. Passa il file all'utilità con il flag -c.

Ad esempio:

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