在Marshmallow

时间:2015-11-26 04:54:30

标签: android android-6.0-marshmallow altbeacon beacon

我在BaseApplication课程中设置了信标后台扫描using this tutorial,但在 Marshmallow 正在运行的设备中显示了此日志:

Caught a RuntimeException from the binder stub implementation.
java.lang.SecurityException: Need ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission to get scan results

最后,通过thisthis引用,我可以为Marshmallow运行设备提供位置访问,以检测信标。

我的问题:

即使我提供位置访问权限,它也不会检测到信标,也会停止显示以上日志。这是ISSUE中的问题吗?我的Nexus 5内部版本号 MRA58N

更新:当我手动打开位置时,它可以正常工作。但这很奇怪。是检测信标的正确方法吗?

1 个答案:

答案 0 :(得分:2)

Android Marshmallow引入了全新的应用程序权限,用户现在可以随时撤消运行时权限。这意味着您无法假定应用程序可以访问该权限,即使之前已授予该权限。您可以参考this libthis guide。并且您可以创建在启用GPS后更改的接口侦听器位置,当位置!= 0.启用GPS后,您必须恢复。我希望这会帮助你。