From 3b5536eee08adeaea527b0d63bb4aaa6b2a81142 Mon Sep 17 00:00:00 2001 From: sashalukin Date: Fri, 16 May 2025 13:37:01 -0400 Subject: [PATCH 1/2] Add XR support --- app/build.gradle.kts | 1 + app/src/main/AndroidManifest.xml | 8 +++++++- .../android/samples/socialite/MainActivity.kt | 17 ++++++++++++++--- gradle/libs.versions.toml | 2 ++ 4 files changed, 24 insertions(+), 4 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 7b7a85da..bb566298 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -87,6 +87,7 @@ dependencies { implementation(libs.glance.appwidget) implementation(libs.glance.material) + implementation(libs.androidx.material3) testImplementation(libs.junit) androidTestImplementation(libs.truth) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ee84e3d6..8878cf2d 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -33,8 +33,14 @@ core-performance-play-services dependency requires minSdk 24. We fall back to using DefaultDevicePerformance from the core-performance dependency (minSdk 19) if the SDK level is <24. + + XR features are only used on SDK level >= 34 (UPSIDE_DOWN_CAKE), + so it's safe to override their declared minSdk as well. --> - + = Build.VERSION_CODES.UPSIDE_DOWN_CAKE) { + EnableXrComponentOverrides { + Main( + appArgs = extractAppArgs(intent), + ) + } + } else { + Main( + appArgs = extractAppArgs(intent), + ) + } } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index ddcb945c..a21b8890 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -55,6 +55,7 @@ generativeai = "0.9.0" datastore = "1.1.4" lifecycleViewmodel = "1.0.0-SNAPSHOT" navigation3 = "0.1.0-SNAPSHOT" +material3Version = "1.0.0-alpha07" [libraries] @@ -127,6 +128,7 @@ androidx-lifecycle-viewmodel-navigation3 = { module = "androidx.lifecycle:lifecy androidx-lifecycle-viewmodel-ktx = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "lifecycleViewmodel" } androidx-navigation3-runtime = { module = "androidx.navigation3:navigation3-runtime", version.ref = "navigation3" } androidx-navigation3-ui = { module = "androidx.navigation3:navigation3-ui", version.ref = "navigation3" } +androidx-material3 = { group = "androidx.xr.compose.material3", name = "material3", version.ref = "material3Version" } [plugins] androidApplication = { id = "com.android.application", version.ref = "agp" } From 840c0964a0abd0334e3a981a0e5cccfb992d90a4 Mon Sep 17 00:00:00 2001 From: sashalukin Date: Fri, 16 May 2025 13:49:41 -0400 Subject: [PATCH 2/2] Rename dependencies --- app/build.gradle.kts | 2 +- gradle/libs.versions.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index bb566298..81020a74 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -87,7 +87,7 @@ dependencies { implementation(libs.glance.appwidget) implementation(libs.glance.material) - implementation(libs.androidx.material3) + implementation(libs.androidx.xr.material3) testImplementation(libs.junit) androidTestImplementation(libs.truth) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index a21b8890..9d806c98 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -55,7 +55,7 @@ generativeai = "0.9.0" datastore = "1.1.4" lifecycleViewmodel = "1.0.0-SNAPSHOT" navigation3 = "0.1.0-SNAPSHOT" -material3Version = "1.0.0-alpha07" +xrMaterial3Version = "1.0.0-alpha07" [libraries] @@ -128,7 +128,7 @@ androidx-lifecycle-viewmodel-navigation3 = { module = "androidx.lifecycle:lifecy androidx-lifecycle-viewmodel-ktx = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "lifecycleViewmodel" } androidx-navigation3-runtime = { module = "androidx.navigation3:navigation3-runtime", version.ref = "navigation3" } androidx-navigation3-ui = { module = "androidx.navigation3:navigation3-ui", version.ref = "navigation3" } -androidx-material3 = { group = "androidx.xr.compose.material3", name = "material3", version.ref = "material3Version" } +androidx-xr-material3 = { group = "androidx.xr.compose.material3", name = "material3", version.ref = "xrMaterial3Version" } [plugins] androidApplication = { id = "com.android.application", version.ref = "agp" }