Gradle ve Android Gradle Plugin güncellemeleri
Gradle ve Android Gradle Plugin sürümlerini yükseltme
Öncelikle Gradle ve Android Gradle Plugin sürümünüzü yükseltin. Bu yükseltme, bazı önemli hata düzeltmelerinin yanı sıra belirli SDK bağımlılıklarıyla (Kotlin 1.9 dahil) daha iyi uyumluluk sunar.
Bu SDK ana sürümü, Android uygulaması projeniz için aşağıdaki sürüm bağımlılıklarını gerektirir:
- En az 7.5.0, 7.6.0'dan yüksek olmayan bir Gradle sürümü
- v7.4.x aralığında bir Android Gradle Eklentisi (AGP) sürümü.
Eklentilerin daha yüksek bir sürümünü hedefleyebilirsiniz ancak kullanımdan kaldırma uyarılarıyla karşılaşabilirsiniz veya bazı yeni özellikler çalışmayabilir.
Gradle sürümünü değiştirmek için projenizin /gradle/wrapper/gradle-wrapper.properties
dosyasındaki satırı değiştirin
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
Android Gradle Plugin sürümünü değiştirmek için buildscript
blokunu içeren build.gradle
dosyasını değiştirin. Örneğin:
buildscript {
repositories {
google()
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.4.1'
}
}
Java 7'den Java 8'e kitaplık desteği geçişi
1. Adım - Java 8 kitaplık desteğini etkinleştirin
SDK min. API düzeyi 23 ve gerekli AGP sürümü 7.4 ve üzeri olduğundan yapılandırma, belirtilen kaynak belgelerden biraz farklıdır.
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'
}
2. Adım - ProGuard veya DexGuard'dan R8'e geçiş
AGP 7.4+ sürümü, ikili program için varsayılan küçültme, kod karartma ve optimizasyon aracı olarak R8'i kullanır. Bu nedenle, bu noktada özel bir işlem yapılması gerekmez.
Proje, AGP 4.0 ve sonraki sürümlerden birine taşınırsa AGP, dosya kaldırma işlemleriyle ilgili olarak aşağıdaki uyarıları verebilir:
build.gradle
dosyasındauseProguard true
kullanımıgradle.properties
dosyasındaandroid.enableR8=false
kullanımı
Bu satırları kaldırmak genellikle bu sorunları çözer.
Kotlin 1.6'dan 1.9'a taşıma
1. Adım - Kotlin Gradle Plugin 1.9.0'a taşıyın
Uygulamanızın üst düzey modülünün build.gradle dosyasında Kotlin Gradle Plugin sürümünü güncelleyin. Eksik olması ihtimaline karşı buildscript bloğundaki bağımlılıklara org.jetbrains.kotlin:kotlin-gradle-plugin
öğesini eklediğinizden emin olun.
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
}
}
Kotlin Gradle Plugin 1.6.X veya 1.7.X'ten geliyorsanız uygulamanızı Kotlin-synthetics'ten taşımanız gerekir. Daha fazla bilgi için resmi taşıma kılavuzuna bakın.
2. Adım - kotlin-stdlib'i 1.9.0 sürümüne yükseltin
Uygulamanızın build.gradle dosyasında kotlin-stblib
uygulamasını 1.9.0 sürümüne yükseltin.
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}
kotlin-stdlib-jdk7
veya kotlin-stdlib-jdk8
ile ilgili tüm referansları kaldırdığınızdan emin olun. Her iki bağımlılık da Kotlin 1.8.0'dan itibaren kotlin-stdlib
altında birleştirilmiştir.