Migrasi untuk Android Consumer SDK v2.0.0

Update Gradle dan Plugin Android Gradle

Mengupgrade versi Gradle dan Plugin Android Gradle

Pertama, upgrade versi Gradle dan Plugin Android Gradle Anda. Upgrade ini menyertakan kompatibilitas yang lebih baik dengan dependensi SDK tertentu (termasuk Kotlin 1.9), serta beberapa perbaikan bug penting.

Rilis utama SDK ini memerlukan dependensi versi berikut untuk project aplikasi Android Anda:

  • versi Gradle minimal v7.5.0, tetapi tidak lebih tinggi dari v7.6.0.
  • versi Plugin Android Gradle (AGP) dalam rentang v7.4.x.

Anda dapat menargetkan plugin versi yang lebih tinggi; namun, Anda mungkin menemukan peringatan penghentian penggunaan, atau beberapa fitur baru mungkin tidak berfungsi.

Untuk mengubah versi Gradle, ubah baris dalam file /gradle/wrapper/gradle-wrapper.properties project Anda

distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip

Untuk mengubah versi Plugin Android Gradle, ubah file build.gradle yang berisi blok buildscript. Contoh:

buildscript {
    repositories {
        google()
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:7.4.1'
    }
}

Migrasi dukungan library Java 7 ke Java 8

Langkah 1 - Aktifkan dukungan library Java 8

Sumber

Karena API level minimum SDK adalah 23 dan versi AGP yang diperlukan adalah 7.4+, konfigurasinya sedikit berbeda dengan dokumentasi sumber yang disebutkan.

buildscript {

    repositories {
        google()
        mavenCentral()
        jcenter()
        maven {
            url = uri("https://storage.googleapis.com/r8-releases/raw")
        }
    }
    dependencies {
        classpath 'com.android.tools:r8:8.0.46'
        classpath 'com.android.tools.build:gradle:7.4.1'
    }
}

android {
    compileOptions {
        // Flag to enable support for the new language APIs
        coreLibraryDesugaringEnabled true
        // Sets Java compatibility to Java 8
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.0.3'
}

Langkah 2 - Bermigrasi dari Proguard atau Dexguard ke R8

R8, sumber

AGP v7.4+ menggunakan R8 sebagai alat pengompresan, obfuscation, dan pengoptimalan default untuk biner, sehingga tidak diperlukan tindakan khusus pada tahap ini.

Jika project dimigrasikan dari AGP 4.0+, AGP dapat mengeluarkan peringatan berikut tentang penghapusan file:

  • Penggunaan useProguard true dalam file build.gradle
  • Penggunaan android.enableR8=false dalam file gradle.properties

Menghapus baris ini biasanya akan menyelesaikan masalah tersebut.

Migrasi Kotlin 1.6 ke 1.9

Langkah 1 - Bermigrasi ke Plugin Gradle Kotlin 1.9.0

Sumber

Update versi Plugin Gradle Kotlin di file build.gradle modul level atas aplikasi Anda. Pastikan untuk menambahkan org.jetbrains.kotlin:kotlin-gradle-plugin dalam dependensi dari blok buildscript jika tidak ada.

buildscript {
  dependencies {
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
  }
}

Anda harus memigrasikan aplikasi dari Kotlin-synthetics jika Anda berasal dari Plugin Kotlin Gradle 1.6.X atau 1.7.X. Lihat panduan migrasi resmi untuk mengetahui informasi selengkapnya.

Langkah 2 - Mengupgrade kotlin-stdlib ke 1.9.0

Sumber

Upgrade kotlin-stblib ke 1.9.0 di file build.gradle aplikasi Anda.

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}

Pastikan untuk menghapus semua referensi ke kotlin-stdlib-jdk7 atau kotlin-stdlib-jdk8. Kedua dependensi telah digabungkan ke dalam kotlin-stdlib mulai dari Kotlin 1.8.0.