Patches crash for RemoteActivityHelper usage for phone clients.
verified through companion on phone via go/androidx/google3#local-copy,
Bug: 315937335
Test: ./gradlew wear:wear-remote-interactions:test
Relnote: N/A
Change-Id: I087743dffe70d7608726e338cba70c1800ac05b7
diff --git a/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/RemoteInteractionsManagerCompat.kt b/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/RemoteInteractionsManagerCompat.kt
index 69ac03e..1c0fb33 100644
--- a/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/RemoteInteractionsManagerCompat.kt
+++ b/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/RemoteInteractionsManagerCompat.kt
@@ -27,7 +27,7 @@
internal open class RemoteInteractionsManagerCompat(context: Context) : IRemoteInteractionsManager {
// TODO(b/307543793): Reuse the generalized `WearApiVersionHelper` once available.
- private val wearApiVersion: WearApiVersion = WearApiVersion()
+ private val wearApiVersion: WearApiVersion = WearApiVersion(context)
private val remoteInteractionsManager: RemoteInteractionsManager? =
if (isAvailabilityStatusApiSupported)
diff --git a/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/WearApiVersion.kt b/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/WearApiVersion.kt
index 4e12a58..5b48d07 100644
--- a/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/WearApiVersion.kt
+++ b/wear/wear-remote-interactions/src/main/java/androidx/wear/remote/interactions/WearApiVersion.kt
@@ -15,18 +15,24 @@
*/
package androidx.wear.remote.interactions
+import android.content.Context
import android.os.Build
+import androidx.wear.remote.interactions.RemoteInteractionsUtil.isCurrentDeviceAWatch
import com.google.wear.Sdk
/**
* Provides wear sdk api version.
*/
-internal class WearApiVersion {
+internal class WearApiVersion(val context: Context) {
// TODO(b/307543793): Reuse the generalized `WearApiVersionHelper` once available.
/** Exposes version of wear sdk. Returns 0 if wear-sdk is not present. */
val wearSdkVersion: Int
get() {
+ if (!isCurrentDeviceAWatch(context)) {
+ // No wear sdk on non-watch device.
+ return 0;
+ }
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
// Wear SDK INT can only be accessed safely from UPSIDE_DOWN_CAKE, introduced from tiramisu kr2.
// Or crashes with `NoSuchField` will be experienced.