Refactor: Upgrade Coil to v3 and update dependencies

- Upgraded image loading library from Coil 2 to Coil 3, updating related APIs across the app.
- Migrated `viewModel()` to a singleton pattern for `AgentViewModel` to optimize instantiation.
- Updated various dependencies, including Android Gradle Plugin, Kotlin, Compose, and other libraries.
- Upgraded Gradle wrapper to version 8.11.1.
- Removed deprecated `windowInsets` and `animateItemPlacement` parameters in Compose components to align with latest API versions.
This commit is contained in:
2025-11-11 18:44:01 +08:00
parent 71718ee9c9
commit 45c5aa29b0
27 changed files with 152 additions and 123 deletions

View File

@@ -1,48 +1,51 @@
[versions]
accompanistSystemuicontroller = "0.27.0"
agp = "8.4.0"
animation = "1.7.0-beta05"
coil = "2.7.0"
accompanistSystemuicontroller = "0.34.0"
agp = "8.9.0"
animation = "1.7.6"
coil = "3.3.0"
composeImageBlurhash = "3.0.2"
converterGson = "2.11.0"
imSdk = "3.8.3.2"
imcoreSdk = "3.8.3-patch10"
coreSplashscreen = "1.0.1"
credentialsPlayServicesAuth = "1.2.2"
coreSplashscreen = "1.2.0"
credentialsPlayServicesAuth = "1.0.0-alpha05"
eventbus = "3.3.1"
firebaseBom = "33.2.0"
firebaseBom = "33.7.0"
gson = "2.12.1"
imagecropview = "3.0.1"
jpushGoogle = "5.4.0"
jwtdecode = "2.0.2"
kotlin = "1.9.10"
coreKtx = "1.10.1"
kotlin = "2.2.21"
ksp = "2.2.21-2.0.4"
composeCompiler = "2.2.21"
coreKtx = "1.15.0"
junit = "4.13.2"
junitVersion = "1.1.5"
espressoCore = "3.5.1"
kotlinFaker = "2.0.0-rc.5"
lifecycleRuntimeKtx = "2.6.1"
activityCompose = "1.8.0"
composeBom = "2024.06.00"
lifecycleRuntimeKtxVersion = "2.6.2"
mapsCompose = "4.3.3"
material = "1.6.8"
material3Android = "1.2.1"
media3Exoplayer = "1.3.1"
navigationCompose = "2.7.7"
pagingRuntime = "3.3.0"
activityKtx = "1.9.0"
lifecycleCommonJvm = "2.8.2"
places = "3.3.0"
junitVersion = "1.2.1"
espressoCore = "3.6.1"
kotlinFaker = "2.0.0-rc.11"
lifecycleRuntimeKtx = "2.8.6"
activityCompose = "1.9.2"
composeBom = "2025.11.00"
lifecycleRuntimeKtxVersion = "2.8.6"
mapsCompose = "6.1.0"
material = "1.7.6"
materialIconsExtended = "1.7.6"
material3Android = "1.3.1"
media3Exoplayer = "1.4.1"
navigationCompose = "2.8.6"
pagingRuntime = "3.3.6"
activityKtx = "1.9.2"
lifecycleCommonJvm = "2.8.6"
places = "3.4.0"
googleid = "1.1.1"
identityCredential = "20231002"
lifecycleProcess = "2.8.4"
lifecycleProcess = "2.8.6"
playServicesAuth = "21.4.0"
rendering = "1.17.1"
zoomable = "1.6.1"
camerax = "1.3.4"
camerax = "1.4.0"
mlkitBarcode = "17.3.0"
room = "2.6.1"
room = "2.8.3"
[libraries]
accompanist-systemuicontroller = { module = "com.google.accompanist:accompanist-systemuicontroller", version.ref = "accompanistSystemuicontroller" }
@@ -53,6 +56,7 @@ androidx-credentials = { module = "androidx.credentials:credentials", version.re
androidx-credentials-play-services-auth = { module = "androidx.credentials:credentials-play-services-auth", version.ref = "credentialsPlayServicesAuth" }
androidx-lifecycle-runtime-ktx-v262 = { module = "androidx.lifecycle:lifecycle-runtime-ktx", version.ref = "lifecycleRuntimeKtxVersion" }
androidx-material = { module = "androidx.compose.material:material", version.ref = "material" }
androidx-material-icons-extended = { module = "androidx.compose.material:material-icons-extended", version.ref = "materialIconsExtended" }
androidx-media3-exoplayer = { module = "androidx.media3:media3-exoplayer", version.ref = "media3Exoplayer" }
androidx-media3-session = { module = "androidx.media3:media3-session", version.ref = "media3Exoplayer" }
androidx-media3-ui = { module = "androidx.media3:media3-ui", version.ref = "media3Exoplayer" }
@@ -62,8 +66,9 @@ androidx-paging-runtime = { module = "androidx.paging:paging-runtime", version.r
androidx-camera-camera2 = { module = "androidx.camera:camera-camera2", version.ref = "camerax" }
androidx-camera-lifecycle = { module = "androidx.camera:camera-lifecycle", version.ref = "camerax" }
androidx-camera-view = { module = "androidx.camera:camera-view", version.ref = "camerax" }
coil = { module = "io.coil-kt:coil", version.ref = "coil" }
coil-compose = { module = "io.coil-kt:coil-compose", version.ref = "coil" }
coil = { module = "io.coil-kt.coil3:coil", version.ref = "coil" }
coil-compose = { module = "io.coil-kt.coil3:coil-compose", version.ref = "coil" }
coil-network-okhttp = { module = "io.coil-kt.coil3:coil-network-okhttp", version.ref = "coil" }
compose-image-blurhash = { module = "com.github.orlando-dev-code:compose-image-blurhash", version.ref = "composeImageBlurhash" }
converter-gson = { module = "com.squareup.retrofit2:converter-gson", version.ref = "converterGson" }
eventbus = { module = "org.greenrobot:eventbus", version.ref = "eventbus" }
@@ -79,7 +84,7 @@ junit = { group = "junit", name = "junit", version.ref = "junit" }
androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "junitVersion" }
androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycleRuntimeKtx" }
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version = "1.9.0" }
androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose" }
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
androidx-ui = { group = "androidx.compose.ui", name = "ui" }
androidx-ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
@@ -104,7 +109,7 @@ play-services-auth = { module = "com.google.android.gms:play-services-auth", ver
rendering = { group = "com.google.ar.sceneform", name = "rendering", version.ref = "rendering" }
retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "converterGson" }
zoomable = { module = "net.engawapg.lib:zoomable", version.ref = "zoomable" }
lottie = { module="com.airbnb.android:lottie-compose", version="6.6.10"}
lottie = { module="com.airbnb.android:lottie-compose", version="6.7.0"}
mlkit-barcode-scanning = { module = "com.google.mlkit:barcode-scanning", version.ref = "mlkitBarcode" }
androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "room" }
androidx-room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
@@ -112,3 +117,5 @@ androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref =
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "composeCompiler" }