Aktualizacje Gradle i wtyczki Androida do obsługi Gradle
Uaktualnianie wersji Gradle i wtyczki Androida do obsługi Gradle
Najpierw uaktualnij wersje Gradle i wtyczki Androida do obsługi Gradle. Ta aktualizacja obejmuje lepszą zgodność z niektórymi zależnościami pakietu SDK (w tym Kotlinem 1.9) oraz kilka ważnych poprawek błędów.
Ta główna wersja pakietu SDK wymaga w projekcie aplikacji na Androida tych zależności:
- Gradle w wersji co najmniej 7.5.0, ale nie wyższej niż 7.6.0.
- Wtyczka Androida do obsługi Gradle (AGP) w wersji z zakresu 7.4.x.
Możesz używać wyższej wersji wtyczek, ale mogą pojawiać się ostrzeżenia o wycofaniu lub niektóre nowe funkcje mogą nie działać.
Aby zmienić wersję Gradle, zmodyfikuj wiersz w pliku /gradle/wrapper/gradle-wrapper.properties projektu.
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
Aby zmienić wersję wtyczki Androida do obsługi Gradle, zmodyfikuj plik build.gradle, który zawiera blok buildscript. Na przykład:
buildscript {
repositories {
google()
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.4.1'
}
}
Migracja obsługi bibliotek z Javy 7 do Javy 8
Krok 1. Włącz obsługę bibliotek Java 8
Ponieważ minimalny poziom interfejsu API pakietu SDK to 23, a wymagana wersja AGP to 7.4 lub nowsza, konfiguracja różni się nieco od tej opisanej w dokumentacji źródłowej.
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'
}
Krok 2. Przeprowadź migrację z Proguard lub Dexguard do R8
AGP w wersji 7.4 lub nowszej używa R8 jako domyślnego narzędzia do zmniejszania, zaciemniania i optymalizacji plików binarnych, więc na tym etapie nie trzeba podejmować żadnych działań.
Jeśli projekt jest migrowany z AGP w wersji 4.0 lub nowszej, AGP może wyświetlać te ostrzeżenia o usuwaniu plików:
- użycie
useProguard truew plikubuild.gradle - użycie
android.enableR8=falsew plikugradle.properties
Usunięcie tych wierszy zwykle rozwiązuje te problemy.
Migracja z Kotlina 1.6 do 1.9
Krok 1. Przeprowadź migrację do wtyczki Kotlin Gradle 1.9.0
Zaktualizuj wersję wtyczki Kotlin Gradle w pliku build.gradle modułu najwyższego poziomu aplikacji. Jeśli brakuje w nim org.jetbrains.kotlin:kotlin-gradle-plugin, dodaj go do zależności w bloku buildscript.
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0"
}
}
Jeśli używasz wtyczki Kotlin Gradle w wersji 1.6.X lub 1.7.X, musisz przeprowadzić migrację aplikacji z Kotlin-synthetics. Więcej informacji znajdziesz w oficjalnym przewodniku migracji for more information.
Krok 2. Uaktualnij kotlin-stdlib do wersji 1.9.0
Uaktualnij kotlin-stblib do wersji 1.9.0 w pliku build.gradle aplikacji.
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.0"
}
Usuń wszystkie odwołania do kotlin-stdlib-jdk7 lub kotlin-stdlib-jdk8. Od Kotlina
1.8.0 obie te zależności zostały połączone w
kotlin-stdlib.