diff --git a/app/src/main/java/com/android/developers/androidify/navigation/MainNavigation.kt b/app/src/main/java/com/android/developers/androidify/navigation/MainNavigation.kt index eb26faea..0d3c2330 100644 --- a/app/src/main/java/com/android/developers/androidify/navigation/MainNavigation.kt +++ b/app/src/main/java/com/android/developers/androidify/navigation/MainNavigation.kt @@ -33,11 +33,10 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalUriHandler import androidx.compose.ui.unit.IntOffset -import androidx.hilt.navigation.compose.hiltViewModel +import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel import androidx.lifecycle.viewmodel.navigation3.rememberViewModelStoreNavEntryDecorator -import androidx.navigation3.runtime.entry import androidx.navigation3.runtime.entryProvider -import androidx.navigation3.runtime.rememberSavedStateNavEntryDecorator +import androidx.navigation3.runtime.rememberSaveableStateHolderNavEntryDecorator import androidx.navigation3.ui.NavDisplay import com.android.developers.androidify.camera.CameraPreviewScreen import com.android.developers.androidify.creation.CreationScreen @@ -66,7 +65,7 @@ fun MainNavigation() { backStack = backStack, onBack = { backStack.removeLastOrNull() }, entryDecorators = listOf( - rememberSavedStateNavEntryDecorator(), + rememberSaveableStateHolderNavEntryDecorator(), rememberViewModelStoreNavEntryDecorator(), ), transitionSpec = { diff --git a/core/xr/src/main/java/com/android/developers/androidify/xr/SharedTransitions.kt b/core/xr/src/main/java/com/android/developers/androidify/xr/SharedTransitions.kt index 119d0b19..20c3fac7 100644 --- a/core/xr/src/main/java/com/android/developers/androidify/xr/SharedTransitions.kt +++ b/core/xr/src/main/java/com/android/developers/androidify/xr/SharedTransitions.kt @@ -55,18 +55,18 @@ private fun shimSharedTransitionScope(original: SharedTransitionScope): SharedTr override val isTransitionActive: Boolean get() = false - override fun Modifier.skipToLookaheadSize(): Modifier = this + override fun Modifier.skipToLookaheadSize(enabled: () -> Boolean) = this override fun Modifier.renderInSharedTransitionScopeOverlay( zIndexInOverlay: Float, - renderInOverlay: (SharedTransitionScope) -> Boolean, + renderInOverlay: () -> Boolean, ) = this override fun Modifier.sharedElement( sharedContentState: SharedTransitionScope.SharedContentState, animatedVisibilityScope: AnimatedVisibilityScope, boundsTransform: BoundsTransform, - placeHolderSize: SharedTransitionScope.PlaceHolderSize, + placeholderSize: SharedTransitionScope.PlaceholderSize, renderInOverlayDuringTransition: Boolean, zIndexInOverlay: Float, clipInOverlayDuringTransition: SharedTransitionScope.OverlayClip, @@ -79,7 +79,7 @@ private fun shimSharedTransitionScope(original: SharedTransitionScope): SharedTr exit: ExitTransition, boundsTransform: BoundsTransform, resizeMode: SharedTransitionScope.ResizeMode, - placeHolderSize: SharedTransitionScope.PlaceHolderSize, + placeholderSize: SharedTransitionScope.PlaceholderSize, renderInOverlayDuringTransition: Boolean, zIndexInOverlay: Float, clipInOverlayDuringTransition: SharedTransitionScope.OverlayClip, @@ -89,7 +89,7 @@ private fun shimSharedTransitionScope(original: SharedTransitionScope): SharedTr sharedContentState: SharedTransitionScope.SharedContentState, visible: Boolean, boundsTransform: BoundsTransform, - placeHolderSize: SharedTransitionScope.PlaceHolderSize, + placeholderSize: SharedTransitionScope.PlaceholderSize, renderInOverlayDuringTransition: Boolean, zIndexInOverlay: Float, clipInOverlayDuringTransition: SharedTransitionScope.OverlayClip, diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 0c245366..3bb97b38 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,11 +3,11 @@ appVersionCode = "10" appVersionName = "1.3.0" appVersionWearOffset = "60000000" -agp = "8.11.1" -bcpkixJdk18on = "1.81" +agp = "8.12.0" +bcpkixJdk18on = "1.82" compileSdk = "36" -core = "1.5.0" -extensionsXr = "1.0.0" +core = "1.7.0" +extensionsXr = "1.1.0" leakcanaryAndroid = "2.14" minSdk = "26" javaVersion = "17" @@ -16,75 +16,75 @@ wearMinSdk = "36" #dependencies accompanist = "0.37.3" -activityCompose = "1.10.1" +activityCompose = "1.11.0" adaptive = "1.1.0" -animationAndroid = "1.8.3" -apksig = "9.0.0-alpha02" +animationAndroid = "1.9.3" +apksig = "9.0.0-alpha06" appcompat = "1.7.1" -baselineprofile = "1.4.0" -benchmarkMacroJunit4 = "1.4.0" -camerax = "1.5.0-beta02" +baselineprofile = "1.4.1" +benchmarkMacroJunit4 = "1.4.1" +camerax = "1.5.1" coilCompose = "3.3.0" coilGif = "3.3.0" -composeBom = "2025.08.00" -concurrent = "1.2.0" +composeBom = "2025.10.00" +concurrent = "1.3.0" converterGson = "2.11.0" -coreKtx = "1.16.0" +coreKtx = "1.17.0" coreSplashscreen = "1.0.1" -crashlytics = "3.0.4" +crashlytics = "3.0.6" datastore = "1.1.7" -espressoCore = "3.6.1" -firebaseBom = "34.2.0" -googleServices = "4.4.3" -googleOss = "17.2.0" -googleOssPlugin = "0.10.6" -guava = "33.4.8-android" -hiltAndroid = "2.56.2" +espressoCore = "3.7.0" +firebaseBom = "34.4.0" +googleServices = "4.4.4" +googleOss = "17.3.0" +googleOssPlugin = "0.10.9" +guava = "33.5.0-android" +hiltAndroid = "2.57.2" hiltLifecycleViewmodel = "1.0.0-alpha03" -hiltNavigationCompose = "1.2.0" +hiltNavigationCompose = "1.3.0" horologist = "0.7.15" junit = "4.13.2" junitVersion = "1.3.0" kotlin = "2.2.0" ksp = "2.2.0-2.0.2" kotlinxCoroutines = "1.10.2" -kotlinxSerialization = "2.2.0" +kotlinxSerialization = "2.2.20" kotlinxSerializationJson = "1.9.0" -kotlinxSerializationProtobuf = "1.8.1" +kotlinxSerializationProtobuf = "1.9.0" ktlint = "1.5.0" -lifecycleRuntimeKtx = "2.9.1" -lifecycleViewmodelNavigation3 = "1.0.0-alpha03" -loggingInterceptor = "5.1.0" +lifecycleRuntimeKtx = "2.9.4" +lifecycleViewmodelNavigation3 = "1.0.0-alpha04" +loggingInterceptor = "5.2.1" material = "1.12.0" -media3 = "1.7.1" -navigation3 = "1.0.0-alpha05" +media3 = "1.8.0" +navigation3 = "1.0.0-alpha11" okhttp = "4.12.0" playServicesWearable = "19.0.0" -playServicesBaseTesting = "16.1.0" +playServicesBaseTesting = "16.2.0" poseDetection = "18.0.0-beta5" profileinstaller = "1.4.1" retrofit = "2.11.0" -robolectric = "4.14.1" -spotless = "7.0.2" +robolectric = "4.16" +spotless = "8.0.0" startup = "1.2.0" -runner = "1.6.2" -uiTextGoogleFonts = "1.8.3" -uiautomator = "2.4.0-alpha05" -uiTooling = "1.8.3" +runner = "1.7.0" +uiTextGoogleFonts = "1.9.3" +uiautomator = "2.4.0-alpha06" +uiTooling = "1.9.3" validatorPush = "1.0.0-alpha08" watchFacePush = "1.0.0-alpha01" wear = "1.3.0" wearCompose = "1.5.0" wearComposeTooling = "1.4.1" wearRemoteInteractions = "1.1.0" -window = "1.4.0" +window = "1.5.0" aiEdge = "0.0.1-exp02" -lifecycleProcess = "2.9.1" +lifecycleProcess = "2.9.4" mlkitCommon = "18.11.0" mlkitSegmentation = "16.0.0-beta1" -playServicesBase = "18.7.2" +playServicesBase = "18.9.0" timber = "5.0.1" -workRuntimeKtx = "2.10.4" +workRuntimeKtx = "2.10.5" xr-compose = "1.0.0-alpha07" [libraries] diff --git a/kokoro/gcp_ubuntu_docker/continuous_wear.cfg b/kokoro/gcp_ubuntu_docker/continuous_wear.cfg new file mode 100644 index 00000000..df102028 --- /dev/null +++ b/kokoro/gcp_ubuntu_docker/continuous_wear.cfg @@ -0,0 +1,12 @@ +build_file: "androidify/kokoro/gcp_ubuntu_docker/kokoro_build_wear_release.sh" + +action { + define_artifacts { + regex: "artifacts/**.aab" + regex: "artifacts/**.intoto.jsonl" + sbom_regex: "artifacts/app-release.spdx.json" + # Optional: Removes the "artifacts/" part from the path in the artifact storage + strip_prefix: "artifacts" + fail_if_no_artifacts: true + } +}