首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何接受BluetoothLE和AndroidThings的位置权限?

如何接受BluetoothLE和AndroidThings的位置权限?
EN

Stack Overflow用户
提问于 2017-05-09 23:17:08
回答 1查看 444关注 0票数 1

我正在使用预览3的雄激素SDK与蓝牙乐设备。

为了启用蓝牙,我必须调用以下命令,以绕过请求用户许可的请求:

代码语言:javascript
复制
mBluetoothAdapter.enable()

但是,在扫描时,我得到了一个SecurityException:

java.lang.SecurityException:需要ACCESS_COARSE_LOCATION或ACCESS_FINE_LOCATION权限才能获得扫描结果

使用Vysor,我通过请求权限和使用以下请求接受许可来解决这一问题:

代码语言:javascript
复制
requestPermissions(new String[] {Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION}, REQUEST_PERMISSIONS_CODE);

是否有一种无需使用屏幕就可以接受许可的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-10 04:39:17

按照安卓系统的说法平台概述文档

不支持在运行时请求权限,因为嵌入式设备不能保证有一个UI来接受运行时对话框。在应用程序的清单文件中声明您需要的权限。在应用程序清单中声明的所有正常和危险的权限都是在安装时授予的。

您看到SecurityException的原因是由于发布说明上列出的下列已知问题

在下一个设备重新启动之前,应用程序请求的危险权限不会被授予。

安装应用程序后重新启动设备将授予应用程序清单中的新权限。开发过程中可以使用的另一种方法是使用-g标志直接在亚行上安装:

代码语言:javascript
复制
$ adb install -g <APK File>

这将在安装时授予危险的权限.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43881249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档