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

如何接受BluetoothLE与AndroidThings的位置权限?,bluetooth,android-things,Bluetooth,Android Things,我正在使用androidthings SDK的预览版3和蓝牙LE设备 为了启用蓝牙,我必须调用以下命令,以绕过请求用户的权限: mBluetoothAdapter.enable() 但是,在扫描时,我得到了一个SecurityException: java.lang.SecurityException:需要访问\u粗略\u位置或访问\u精细\u位置权限才能获取扫描结果 使用Vysor,我通过请求权限并通过以下请求接受权限来解决此问题: requestPermissions(new String

我正在使用androidthings SDK的预览版3和蓝牙LE设备

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

mBluetoothAdapter.enable()
但是,在扫描时,我得到了一个SecurityException:

java.lang.SecurityException:需要访问\u粗略\u位置或访问\u精细\u位置权限才能获取扫描结果

使用Vysor,我通过请求权限并通过以下请求接受权限来解决此问题:

requestPermissions(new String[] {Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION}, REQUEST_PERMISSIONS_CODE);
有没有一种方法可以在不需要使用屏幕的情况下接受许可?

根据Android Things:

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

出现
SecurityException
的原因是由于上列出的以下已知问题:

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

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

$ adb install -g <APK File>
$adb安装-g
这将在安装时授予危险的权限。

根据Android内容:

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

出现
SecurityException
的原因是由于上列出的以下已知问题:

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

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

$ adb install -g <APK File>
$adb安装-g
这将在安装时授予危险权限