kotlin:了解是否有 wearos 设备连接到 phone 以及它是否安装了特定应用程序的最佳方法是什么?

kotlin: What is the best way to know if there is a wearos device connected to the phone and if it has a specific app installed?

我正在寻找这个,但没有适合我的解决方案。知道如何使这成为可能吗?

我有一个用 kotlin 编写的 Android 应用程序,它有一个 wearOS 版本。 在 iOS 版本中,我已经能够确定它是否有 AppleWatch 连接到 ipnone 并检查手表中是否安装了该应用程序,如果有则邀请用户安装它没有安装。

当尝试在 Android 版本中做类似的事情时,我已经尝试了我在网上找到的所有选项,但其中 none 可以按我的需要工作:

1 - 我已经设法检测到设备是否已连接到蓝牙,以及它的名称中是否包含 watch 一词。但是,这并不能保证这款手表就是wearOS。

2 - 我也尝试检测 phone 上是否安装了 wearos 应用程序,但是带有 Galaxy watch 4 的手表使用他们自己的应用程序,所以这个解决方案对我没有帮助,特别是因为galaxy watch 应用程序用于其他带有 tizen 而非 wearOS 的手表。

3 - 我试图检测手表上是否安装了该应用程序,但我无法做到。但即使在那种情况下,我也不知道是因为用户没有安装它(这正是我要找的)还是手表与 wearOS 不兼容。

我的想法是检查是否有 wearOS 设备连接到 phone,如果连接了,检查是否安装了我的应用程序,如果没有,请“邀请安装”

有没有人做过类似的事情?你是怎么解决的?

提前致谢。

您应该可以使用 NodeClient 查看是否有可穿戴设备连接到您的手机。

https://developers.google.com/android/reference/com/google/android/gms/wearable/NodeClient

然后使用 CapabilityClient 来查看您的应用程序是否已安装、广告和约定的功能。

https://developers.google.com/android/reference/com/google/android/gms/wearable/CapabilityClient

如果它是一个不相关的应用程序,那么您可能无法检查它是否是远程安装的。