Progruard e R8 sono deprecati - Android Studio 3.6


9

Ricevo avvisi deprecati su Proguard e R8 dopo aver aggiornato il mio Android Studio a 3.6. Ciò significa che non dovremmo usare l'offuscamento nei nostri progetti o c'è un'altra opzione equivalente che dovremmo considerare mentre costruiamo in modalità di rilascio?

L'opzione 'android.enableR8' è obsoleta e non dovrebbe più essere utilizzata. Verrà rimosso in una versione futura del plug-in Android Gradle e non consentirà più di disabilitare R8. Moduli interessati: ecc


Puoi per favore condividere i messaggi che stai ricevendo?
— Anton Baranenko,

Puoi chiarire cosa intendi con "avvisi deprecati" in questo contesto? Il testo effettivo degli avvisi potrebbe essere d'aiuto.
— Peter Tefft,

Non ricordo il messaggio esatto, ma diceva che era stato deprecato. Nota a
— margine

Per ottenere una risposta è necessario pubblicare il messaggio di avviso completo ed esatto . Ad esempio, l' useProGuardimpostazione è stata deprecata un po 'di tempo fa - forse è quello che hai visto e non lo ricordi.
— Michael,

Questa settimana sono passato a R8 e useProGuardho rimosso tutto dal mio grado
— Rixment il

Risposte:


7

Ciò significa che non dovremmo usare l'offuscamento nei nostri progetti

No. Puoi usare gli strumenti di offuscamento e ottimizzazione.

c'è un'altra opzione equivalente che dovremmo considerare mentre costruiamo in modalità di rilascio

Se lo hai android.enableR8 = truenel tuo gradle.properties, rimuovilo come R8 come strumento predefinito e l' android.enableR8impostazione stessa è deprecata, causando questi avvisi di deprecazione.

Se devi android.enableR8 = falseusare proguard per l'ottimizzazione e l'offuscamento, considera invece la migrazione a R8.


come rendere offuscato il progetto? Ho rimosso tutte le proprietà indicate e ho detto di rimuovere la dipendenza di R8 da build.gradle e non riesco più a compilare il progetto, ottengo R8NullPointerException che cos'è?
— Lena Bru,

Sembra qualcosa che esula dall'ambito della sezione commenti qui.
— laalto,

@laalto Quello che ho ottenuto dalla tua risposta è che R8 funzionerà automaticamente, quindi non c'è bisogno di aggiungere android.enableR8 = true, giusto?
— Mohamed,

@Mohamed Anche questa è la mia comprensione, a condizione che tu abbia il plug-in Android Gradle 3.6 o più recente.
— laalto
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.