Plugin Android Gradle 3.2.0 (September 2018)

Versi plugin Android ini perlu beberapa hal berikut:

3.2.1 (Oktober 2018)

Dengan update ini, Anda tidak perlu lagi menentukan versi untuk SDK Build Tools. Plugin Android Gradle sekarang menggunakan versi 28.0.3 secara default.

Fitur baru

  • Dukungan untuk membuat Android App Bundle: App bundle adalah format upload baru yang menyertakan semua kode dan resource terkompilasi aplikasi Anda, sedangkan pembuatan dan penandatanganan APK-nya diserahkan ke Google Play Store. Anda tidak perlu lagi membuat, menandatangani, dan mengelola banyak APK, dan pengguna mendapatkan download yang lebih kecil yang dioptimalkan untuk perangkat mereka. Untuk mempelajari lebih lanjut, baca Tentang Android App Bundle.

  • Dukungan untuk peningkatan kecepatan build inkremental saat menggunakan pemroses anotasi: DSL AnnotationProcessorOptions sekarang memperluas CommandLineArgumentProvider yang memungkinkan Anda atau penulis pemroses anotasi untuk menganotasi argumen bagi pemroses yang menggunakan anotasi jenis properti build inkremental. Penggunaan anotasi ini meningkatkan keakuratan dan performa build inkremental atau clean build yang di-cache. Untuk mempelajari lebih lanjut, baca Meneruskan argumen ke pemroses anotasi.

  • Alat migrasi untuk AndroidX: Saat menggunakan plugin Android Gradle 3.2.0 dengan Android 3.2 dan versi yang lebih baru, Anda dapat memigrasikan dependensi Maven dan lokal project agar menggunakan library AndroidX baru dengan memilih Refactor > Migrate to AndroidX dari panel menu. Penggunaan alat migrasi ini juga menetapkan tanda berikut ke true dalam file gradle.properties Anda:

    • android.useAndroidX: Jika ditetapkan ke true, plugin Android akan menggunakan library AndroidX yang sesuai, bukan Support Library. Jika flag ini tidak ditentukan, plugin akan menyetelnya ke false secara default.

    • android.enableJetifier: Jika disetel ke true, plugin Android akan otomatis memigrasikan library pihak ketiga yang ada agar menggunakan AndroidX dengan menulis ulang biner library tersebut. Jika flag ini tidak ditentukan, plugin akan menyetelnya ke false secara default. Anda dapat menetapkan tanda ini ke true hanya jika android.useAndroidX juga ditetapkan ke true; jika tidak, Anda akan mengalami error build.

      Untuk mempelajari lebih lanjut, baca Ringkasan AndroidX.

  • Penyingkat kode baru, R8: R8 adalah alat penyingkatan dan obfuscation kode baru yang menggantikan ProGuard. Anda dapat mulai menggunakan versi pratinjau R8 dengan menyertakan baris berikut dalam file gradle.properties project Anda:

            android.enableR8 = true
            
            android.enableR8 = true
            

Perubahan perilaku

  • Desugaring dengan D8 sekarang diaktifkan secara default.

  • AAPT2 sekarang ada di repositori Maven Google. Untuk menggunakan AAPT2, pastikan Anda memiliki dependensi google() dalam file build.gradle, seperti ditunjukkan di bawah ini:

              buildscript {
                    repositories {
                        google() // here
                        jcenter()
                    }
                    dependencies {
                        classpath 'com.android.tools.build:gradle:3.2.0'
                    }
                }
                allprojects {
                    repositories {
                        google() // and here
                        jcenter()
                }
              
              buildscript {
                    repositories {
                        google() // here
                        jcenter()
                    }
                    dependencies {
                        classpath 'com.android.tools.build:gradle:3.2.0'
                    }
                }
                allprojects {
                    repositories {
                        google() // and here
                        jcenter()
                }
              
  • Multidex native sekarang diaktifkan secara default. Android Studio versi sebelumnya mengaktifkan multidex native saat men-deploy versi debug sebuah aplikasi ke perangkat yang menjalankan Android API level 21 atau yang lebih tinggi. Sekarang, baik Anda men-deploy ke perangkat atau membuat APK untuk rilis, plugin Android Gradle akan mengaktifkan multidex native untuk semua modul yang menetapkan minSdkVersion=21 atau yang lebih tinggi.

  • Plugin sekarang memberlakukan versi minimum dari plugin protobuf (0.8.6), plugin Kotlin (1.2.50), dan plugin Crashlytics (1.25.4).

  • Plugin modul fitur, com.android.feature, sekarang memberlakukan penggunaan huruf, angka, dan garis bawah saja saat menentukan nama modul. Misalnya, jika nama modul fitur Anda menyertakan tanda hubung, Anda akan mengalami error build. Perilaku ini sesuai dengan plugin fitur dinamis.

Perbaikan bug