有没有办法在 Android Wear Watch 上检测位置是不是关闭而不是不存在
Posted
技术标签:
【中文标题】有没有办法在 Android Wear Watch 上检测位置是不是关闭而不是不存在【英文标题】:Is there a way to detect Location is OFF on Android Wear Watch as opposed to not present有没有办法在 Android Wear Watch 上检测位置是否关闭而不是不存在 【发布时间】:2018-01-03 10:42:42 【问题描述】:我开发了一款裁判手表 (https://play.google.com/store/apps/details?id=com.pipperpublishing.soccerrefpro),它使用手表 GPS 跟踪裁判的场地覆盖范围和其他健身统计数据。这不是关于 ACCESS_FINE_LOCATION 权限的问题,我处理得很好。
我知道我可以使用getPackageManager().hasSystemFeature(PackageManager.FEATURE_LOCATION_GPS
来确定手表是否有 GPS。但是,如果用户不小心关闭了手表上的设置>位置,有没有办法检测到呢?我怀疑手表会为上述呼叫报告 TRUE,但随后尝试使用手机 wifi/gps/cell 的 Fused Location Provider 提供位置。一旦你带着手机在球场上奔跑,那当然是没用的。
我尝试查看健身传感器源并确定源是否为本地,但这似乎不起作用。
【问题讨论】:
【参考方案1】:如果您已经使用hasSystemFeature()
方法确定您的 android Wear 设备是否具有内置 GPS 传感器,那么您可以继续使用handling disconnection events。
您可能希望实现onPeerDisconnected()
方法,以便您的应用能够处理丢失的位置数据,以防穿戴设备与其配对设备失去连接。
此外,请查看此SO post,了解有关如何触发系统 UI 以获取启用位置对话框的权限的更多见解。
【讨论】:
感谢您的快速回复 - 我会看看!以上是关于有没有办法在 Android Wear Watch 上检测位置是不是关闭而不是不存在的主要内容,如果未能解决你的问题,请参考以下文章
全新 Google Pixel Watch 重磅上线 | 着手为 Wear OS 构建应用!