diff --git a/README.md b/README.md index be1270b16..b80090c29 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,9 @@ -Now in Android App +Now in Android App - Kotlin Multiplatform Edition ================== +Welcome to the Kotlin Multiplatform edition of Now in Android, a community-driven initiative to bring the best of Android development content to developers across platforms. This repository is a branch of the original Now in Android project, reimagined and re-engineered using Kotlin Multiplatform technology to make the project truly cross-platform. **Learn how this app was designed and built in the [design case study](https://goo.gle/nia-figma), [architecture learning journey](docs/ArchitectureLearningJourney.md) and [modularization learning journey](docs/ModularizationLearningJourney.md).** diff --git a/app-nia-catalog/dependencies/releaseRuntimeClasspath.txt b/app-nia-catalog/dependencies/releaseRuntimeClasspath.txt index d5a487997..212bbe38c 100644 --- a/app-nia-catalog/dependencies/releaseRuntimeClasspath.txt +++ b/app-nia-catalog/dependencies/releaseRuntimeClasspath.txt @@ -1,6 +1,6 @@ -androidx.activity:activity-compose:1.8.0 -androidx.activity:activity-ktx:1.8.0 -androidx.activity:activity:1.8.0 +androidx.activity:activity-compose:1.8.2 +androidx.activity:activity-ktx:1.8.2 +androidx.activity:activity:1.8.2 androidx.annotation:annotation-experimental:1.4.0 androidx.annotation:annotation-jvm:1.7.1 androidx.annotation:annotation:1.7.1 diff --git a/app/dependencies/prodReleaseRuntimeClasspath.txt b/app/dependencies/prodReleaseRuntimeClasspath.txt index b7eecc088..f01fcb588 100644 --- a/app/dependencies/prodReleaseRuntimeClasspath.txt +++ b/app/dependencies/prodReleaseRuntimeClasspath.txt @@ -1,6 +1,6 @@ -androidx.activity:activity-compose:1.8.0 -androidx.activity:activity-ktx:1.8.0 -androidx.activity:activity:1.8.0 +androidx.activity:activity-compose:1.8.2 +androidx.activity:activity-ktx:1.8.2 +androidx.activity:activity:1.8.2 androidx.annotation:annotation-experimental:1.4.0 androidx.annotation:annotation-jvm:1.7.1 androidx.annotation:annotation:1.7.1 @@ -13,43 +13,43 @@ androidx.browser:browser:1.8.0 androidx.collection:collection-jvm:1.4.0 androidx.collection:collection-ktx:1.4.0 androidx.collection:collection:1.4.0 -androidx.compose.animation:animation-android:1.6.1 -androidx.compose.animation:animation-core-android:1.6.1 -androidx.compose.animation:animation-core:1.6.1 -androidx.compose.animation:animation:1.6.1 -androidx.compose.foundation:foundation-android:1.6.1 -androidx.compose.foundation:foundation-layout-android:1.6.1 -androidx.compose.foundation:foundation-layout:1.6.1 -androidx.compose.foundation:foundation:1.6.1 +androidx.compose.animation:animation-android:1.6.2 +androidx.compose.animation:animation-core-android:1.6.2 +androidx.compose.animation:animation-core:1.6.2 +androidx.compose.animation:animation:1.6.2 +androidx.compose.foundation:foundation-android:1.6.2 +androidx.compose.foundation:foundation-layout-android:1.6.2 +androidx.compose.foundation:foundation-layout:1.6.2 +androidx.compose.foundation:foundation:1.6.2 androidx.compose.material3:material3-android:1.2.0 androidx.compose.material3:material3-window-size-class-android:1.2.0 androidx.compose.material3:material3-window-size-class:1.2.0 androidx.compose.material3:material3:1.2.0 -androidx.compose.material:material-icons-core-android:1.6.1 -androidx.compose.material:material-icons-core:1.6.1 -androidx.compose.material:material-icons-extended-android:1.6.1 -androidx.compose.material:material-icons-extended:1.6.1 -androidx.compose.material:material-ripple-android:1.6.1 -androidx.compose.material:material-ripple:1.6.1 -androidx.compose.runtime:runtime-android:1.6.1 -androidx.compose.runtime:runtime-saveable-android:1.6.1 -androidx.compose.runtime:runtime-saveable:1.6.1 -androidx.compose.runtime:runtime:1.6.1 -androidx.compose.ui:ui-android:1.6.1 -androidx.compose.ui:ui-geometry-android:1.6.1 -androidx.compose.ui:ui-geometry:1.6.1 -androidx.compose.ui:ui-graphics-android:1.6.1 -androidx.compose.ui:ui-graphics:1.6.1 -androidx.compose.ui:ui-text-android:1.6.1 -androidx.compose.ui:ui-text:1.6.1 -androidx.compose.ui:ui-tooling-preview-android:1.6.1 -androidx.compose.ui:ui-tooling-preview:1.6.1 -androidx.compose.ui:ui-unit-android:1.6.1 -androidx.compose.ui:ui-unit:1.6.1 -androidx.compose.ui:ui-util-android:1.6.1 -androidx.compose.ui:ui-util:1.6.1 -androidx.compose.ui:ui:1.6.1 -androidx.compose:compose-bom:2024.02.00 +androidx.compose.material:material-icons-core-android:1.6.2 +androidx.compose.material:material-icons-core:1.6.2 +androidx.compose.material:material-icons-extended-android:1.6.2 +androidx.compose.material:material-icons-extended:1.6.2 +androidx.compose.material:material-ripple-android:1.6.2 +androidx.compose.material:material-ripple:1.6.2 +androidx.compose.runtime:runtime-android:1.6.2 +androidx.compose.runtime:runtime-saveable-android:1.6.2 +androidx.compose.runtime:runtime-saveable:1.6.2 +androidx.compose.runtime:runtime:1.6.2 +androidx.compose.ui:ui-android:1.6.2 +androidx.compose.ui:ui-geometry-android:1.6.2 +androidx.compose.ui:ui-geometry:1.6.2 +androidx.compose.ui:ui-graphics-android:1.6.2 +androidx.compose.ui:ui-graphics:1.6.2 +androidx.compose.ui:ui-text-android:1.6.2 +androidx.compose.ui:ui-text:1.6.2 +androidx.compose.ui:ui-tooling-preview-android:1.6.2 +androidx.compose.ui:ui-tooling-preview:1.6.2 +androidx.compose.ui:ui-unit-android:1.6.2 +androidx.compose.ui:ui-unit:1.6.2 +androidx.compose.ui:ui-util-android:1.6.2 +androidx.compose.ui:ui-util:1.6.2 +androidx.compose.ui:ui:1.6.2 +androidx.compose:compose-bom:2024.02.01 androidx.concurrent:concurrent-futures:1.1.0 androidx.core:core-ktx:1.12.0 androidx.core:core-splashscreen:1.0.1 @@ -128,20 +128,20 @@ app.cash.sqldelight:runtime-jvm:2.0.1 app.cash.sqldelight:runtime:2.0.1 com.caverock:androidsvg-aar:1.4 com.google.accompanist:accompanist-drawablepainter:0.32.0 -com.google.accompanist:accompanist-permissions:0.32.0 -com.google.android.datatransport:transport-api:3.0.0 +com.google.accompanist:accompanist-permissions:0.34.0 +com.google.android.datatransport:transport-api:3.1.0 com.google.android.datatransport:transport-backend-cct:3.1.9 com.google.android.datatransport:transport-runtime:3.1.9 com.google.android.gms:play-services-ads-identifier:18.0.0 com.google.android.gms:play-services-base:18.0.1 com.google.android.gms:play-services-basement:18.1.0 -com.google.android.gms:play-services-cloud-messaging:17.0.1 -com.google.android.gms:play-services-measurement-api:21.4.0 -com.google.android.gms:play-services-measurement-base:21.4.0 -com.google.android.gms:play-services-measurement-impl:21.4.0 -com.google.android.gms:play-services-measurement-sdk-api:21.4.0 -com.google.android.gms:play-services-measurement-sdk:21.4.0 -com.google.android.gms:play-services-measurement:21.4.0 +com.google.android.gms:play-services-cloud-messaging:17.1.0 +com.google.android.gms:play-services-measurement-api:21.5.1 +com.google.android.gms:play-services-measurement-base:21.5.1 +com.google.android.gms:play-services-measurement-impl:21.5.1 +com.google.android.gms:play-services-measurement-sdk-api:21.5.1 +com.google.android.gms:play-services-measurement-sdk:21.5.1 +com.google.android.gms:play-services-measurement:21.5.1 com.google.android.gms:play-services-oss-licenses:17.0.1 com.google.android.gms:play-services-stats:17.0.2 com.google.android.gms:play-services-tasks:18.0.2 @@ -152,16 +152,17 @@ com.google.dagger:hilt-android:2.50 com.google.dagger:hilt-core:2.50 com.google.errorprone:error_prone_annotations:2.11.0 com.google.firebase:firebase-abt:21.1.1 -com.google.firebase:firebase-analytics-ktx:21.4.0 -com.google.firebase:firebase-analytics:21.4.0 +com.google.firebase:firebase-analytics-ktx:21.5.1 +com.google.firebase:firebase-analytics:21.5.1 com.google.firebase:firebase-annotations:16.2.0 -com.google.firebase:firebase-bom:32.4.0 +com.google.firebase:firebase-bom:32.7.2 com.google.firebase:firebase-common-ktx:20.4.2 com.google.firebase:firebase-common:20.4.2 com.google.firebase:firebase-components:17.1.5 -com.google.firebase:firebase-config:21.5.0 -com.google.firebase:firebase-crashlytics-ktx:18.5.0 -com.google.firebase:firebase-crashlytics:18.5.0 +com.google.firebase:firebase-config-interop:16.0.1 +com.google.firebase:firebase-config:21.6.1 +com.google.firebase:firebase-crashlytics-ktx:18.6.2 +com.google.firebase:firebase-crashlytics:18.6.2 com.google.firebase:firebase-datatransport:18.1.8 com.google.firebase:firebase-encoders-json:18.0.1 com.google.firebase:firebase-encoders-proto:16.0.0 @@ -170,19 +171,27 @@ com.google.firebase:firebase-iid-interop:17.1.0 com.google.firebase:firebase-installations-interop:17.1.1 com.google.firebase:firebase-installations:17.2.0 com.google.firebase:firebase-measurement-connector:19.0.0 -com.google.firebase:firebase-messaging-ktx:23.3.0 -com.google.firebase:firebase-messaging:23.3.0 -com.google.firebase:firebase-perf-ktx:20.5.0 -com.google.firebase:firebase-perf:20.5.0 -com.google.firebase:firebase-sessions:1.1.0 +com.google.firebase:firebase-messaging-ktx:23.4.1 +com.google.firebase:firebase-messaging:23.4.1 +com.google.firebase:firebase-perf-ktx:20.5.2 +com.google.firebase:firebase-perf:20.5.2 +com.google.firebase:firebase-sessions:1.2.2 com.google.firebase:protolite-well-known-types:18.0.0 com.google.guava:failureaccess:1.0.1 com.google.guava:guava:31.1-android com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava com.google.j2objc:j2objc-annotations:1.3 -com.google.protobuf:protobuf-javalite:3.25.2 -com.google.protobuf:protobuf-kotlin-lite:3.25.2 +com.google.protobuf:protobuf-javalite:3.25.3 +com.google.protobuf:protobuf-kotlin-lite:3.25.3 com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:1.0.0 +com.russhwolf:multiplatform-settings-android:1.1.1 +com.russhwolf:multiplatform-settings-coroutines-android:1.1.1 +com.russhwolf:multiplatform-settings-coroutines:1.1.1 +com.russhwolf:multiplatform-settings-no-arg-android:1.1.1 +com.russhwolf:multiplatform-settings-no-arg:1.1.1 +com.russhwolf:multiplatform-settings-serialization-android:1.1.1 +com.russhwolf:multiplatform-settings-serialization:1.1.1 +com.russhwolf:multiplatform-settings:1.1.1 com.squareup.okhttp3:logging-interceptor:4.12.0 com.squareup.okhttp3:okhttp:4.12.0 com.squareup.okio:okio-jvm:3.8.0 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 5b9fd8408..91a570d5e 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,5 @@ [versions] -accompanist = "0.32.0" +accompanist = "0.34.0" androidDesugarJdkLibs = "2.0.4" # AGP and tools should be updated together androidGradlePlugin = "8.3.0" @@ -30,8 +30,8 @@ androidxUiAutomator = "2.2.0" androidxWindowManager = "1.2.0" androidxWork = "2.9.0" coil = "3.0.0-alpha06" -dependencyGuard = "0.4.3" -firebaseBom = "32.4.0" +dependencyGuard = "0.5.0" +firebaseBom = "32.7.2" firebaseCrashlyticsPlugin = "2.9.9" firebasePerfPlugin = "1.4.2" gmsPlugin = "4.4.1" @@ -47,12 +47,12 @@ kotlinxDatetime = "0.5.0" kotlinxSerializationJson = "1.6.3" ksp = "1.9.22-1.0.18" okhttp = "4.12.0" -protobuf = "3.25.2" +protobuf = "3.25.3" protobufPlugin = "0.9.4" retrofit = "2.9.0" retrofitKotlinxSerializationJson = "1.0.0" robolectric = "4.11.1" -roborazzi = "1.7.0" +roborazzi = "1.10.1" room = "2.6.1" secrets = "2.0.1" truth = "1.4.2"