Progruard dan R8 tidak digunakan lagi - Android Studio 3.6

9

Saya mendapatkan peringatan yang sudah tidak berlaku lagi sehubungan dengan Proguard dan R8 setelah meningkatkan Android Studio saya ke 3.6. Apakah itu berarti kita tidak boleh menggunakan kebingungan dalam proyek-proyek kita atau ada opsi lain yang setara yang harus kita pertimbangkan saat membangun dalam mode rilis?

Opsi 'android.enableR8' sudah usang dan tidak boleh digunakan lagi. Itu akan dihapus di versi selanjutnya dari plugin Android Gradle, dan tidak akan lagi memungkinkan Anda untuk menonaktifkan R8. Modul yang Terkena Dampak: dll

Rixment
sumber
Bisakah Anda berbagi pesan yang Anda dapatkan?
Anton Baranenko
Bisakah Anda mengklarifikasi apa yang Anda maksud dengan "peringatan yang sudah usang" dalam konteks ini? Teks peringatan yang sebenarnya bisa membantu.
Peter Tefft
Saya tidak ingat pesan persisnya, tetapi dikatakan sudah usang. Catatan: Saya mendapatkannya setelah memutakhirkan ke Android Studio 3.6
Rixment
Untuk mendapatkan jawaban, Anda harus memposting pesan peringatan lengkap dan tepat . Misalnya, useProGuardpengaturan telah ditinggalkan beberapa waktu lalu - mungkin itulah yang Anda lihat dan Anda salah mengingatnya.
Michael
Saya telah beralih ke R8 minggu ini dan menghapus semua useProGuarddari kelas saya
Rixment

Jawaban:

7

Apakah itu berarti kita tidak boleh menggunakan kebingungan dalam proyek kita

Tidak. Anda dapat menggunakan perangkat kebingungan dan optimisasi.

apakah ada opsi lain yang setara yang harus kita pertimbangkan saat membangun dalam mode rilis

Jika ada android.enableR8 = truedi Anda gradle.properties, hapus sebagai R8 itu perkakas default dan android.enableR8pengaturan itu sendiri sudah usang, menyebabkan peringatan penghentian ini.

Jika Anda harus android.enableR8 = falsemenggunakan proguard untuk optimisasi dan kebingungan, pertimbangkan untuk bermigrasi ke R8.

laalto
sumber
bagaimana membuat proyek menjadi kabur? Saya menghapus semua properti yang diberikan dan berkata untuk menghapus ketergantungan R8 dari build.gradle dan saya tidak dapat mengkompilasi proyek lagi, saya mendapatkan R8NullPointerException apa itu?
Lena Bru
Itu terlihat seperti sesuatu di luar lingkup bagian komentar di sini.
laalto
@laalto Apa yang saya dapatkan dari jawaban Anda adalah bahwa R8 akan bekerja secara otomatis sehingga tidak perlu menambahkan android.enableR8 = true, bukan?
Mohamed
@Mohamed Itulah pengertian saya juga, asalkan Anda memiliki plugin Android Gradle 3.6 atau lebih baru.
laalto