为什么我问这个:(也是在应用程序中尝试它的原因)
它发生了当我们使用谷歌地图棒棒糖. 即使位置被禁用,用户从地图应用程序输入后,它也会以高精度模式打开,而无需访问“设置”。
启用蓝牙可以实现类似的功能,该操作是在我的应用程序中启动的;用户需要做出选择,但用户不会被重定向到“设置”,使用:
startActivity(new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE));
可以在以下位置找到蓝牙适配器,现在我们知道没有 LocationAdapter,所以我环顾四周gms->位置服务,基本上几乎所有内容位置 API 参考, android.location.LocationManager但看起来并不像ACTION_REQUEST_ENABLE
目前还可以使用。
希望有其他方法可以达到同样的效果,并且有更多的人尝试过。
请注意:
context.startActivity(new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS));
不是那样工作的。
UPDATE 3:
提示用户更改位置设置正如@patrickandroid,在评论中提到的,第二次更新的链接已损坏
谷歌样本; android 位置和选项 - 供代码参考。
UPDATE 2:
谷歌样本; - 供代码参考。
此示例基于此中包含的 LocationUpdates 示例构建
存储库,并允许用户更新设备的位置设置
使用位置对话框。
使用SettingsApi确保设备的系统设置
已针对应用程序的位置需求进行了正确配置。
UPDATE 1:
Google Play 服务 7.0 版(2015 年 3 月)发布...
位置设置- 虽然 FusedLocationProviderApi 结合了多个传感器来为您提供最佳位置,但其准确性
您的应用程序接收的位置仍然很大程度上取决于设置
在设备上启用(GPS、wifi、飞行模式等)。使用
新的SettingsApi类,你可以调出一个位置设置对话框
显示一键式控件,供用户更改设置
无需离开您的应用程序。
使用公共接口SettingsApi
- 确定设备上是否启用了相关系统设置以执行所需的位置请求。
- 或者,调用一个对话框,允许用户通过单击启用必要的位置设置。
留下前面的部分供参考:
更新/答复
对于每个寻找这个答案的人来说,Google Play 服务 7.0
它添加了用于检测地点和连接到附近设备的 API,改进了移动广告、健身数据、位置设置等
在 Google Play 服务 7.0 中,我们引入了一种标准机制
检查是否为给定的位置启用了必要的位置设置
Location请求成功。如果有可能的改进,你
可以显示一键式控件,供用户更改设置
无需离开您的应用程序。
![exactly this](https://i.stack.imgur.com/81TfP.png)
该 API 提供了一个绝佳的机会来打造更好的用户
经验,特别是如果位置信息对于
您的应用程序的用户体验,例如 Google 地图的情况
他们集成了“位置设置”对话框,并看到了戏剧性的效果
处于良好位置状态的用户数量增加。
Source: Android 开发者博客:Google Play 服务 7.0 - 适合所有人!
SDK即将推出!
我们将推出 Google Play 服务 7.0
接下来的几天。期待这篇博文的更新,已发布
文档,以及 SDK 推出后的可用性
完全的。
将在实施后更新程序化l-o-c
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)