根据Android Wear 2.0 guide ,Android Wear 2 应用程序将单独安装,一个来自手机上的 Play 商店,一个来自 watch 上的 Play 商店,这与打包在一起的 Android Wear 1.x 应用程序不同
因此,指南建议应用程序应通知用户是否需要配套应用程序,但未安装在连接的设备上。
但是,并非所有 watch 都会获得 2.0 升级,有些 watch 会停留在 1.x。这些 watch 会自动安装应用程序伴侣,如果缺少一个,则仅意味着应用程序需要一段时间才能通过蓝牙连接安装。在这些 watch 上显示“安装配套应用程序”通知毫无意义,因为用户无法采取任何措施来加快该过程(旧 watch 上的 Play 商店中有)。
现在的问题是,如果连接的 2.x watch 没有该应用程序,我找不到显示警告的方法,同时如果连接的 watch 运行 1.x,则不显示警告。
有没有好的方法来区分两个不同连接的 Android Wear 版本?
最佳答案
目前还没有一个好的方法来做到这一点。 Wear 开发者 G+ 社区对此进行了多次讨论,我们提出的最好建议是:
- 继续发送
RemoteIntent
以打开 Play 商店。 - 执行此操作时附加一个
RemoteIntent.ResultReceiver
。 - 如果 watch 运行 Wear 1.x,则返回的
resultCode
为RESULT_FAILED
,您可以向用户显示相应的消息。
这显然不理想;对于 1.x 用户来说,它涉及一个无用的步骤(尝试打开 Play 商店),并且也无法区分任何其他可能的故障模式。但截至今天,这是我们拥有的最好的。
讨论:
https://plus.google.com/+SterlingUdell/posts/XJZ8mAsaZ8B https://plus.google.com/u/0/+SterlingUdell/posts/WWBVxjcD7vT
关于android - 检测连接的 watch 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42090374/