bluetoothDeive.createBond()
有没有人在使用 android 4.4 api调用方法时遇到与以下错误消息相同的问题?
java.lang.SecurityException:需要蓝牙特权权限
注意:BLUETOOTH_ADMIN
权限已包含在AndroidManifest
文件中。
bluetoothDeive.createBond()
有没有人在使用 android 4.4 api调用方法时遇到与以下错误消息相同的问题?
java.lang.SecurityException:需要蓝牙特权权限
注意:BLUETOOTH_ADMIN
权限已包含在AndroidManifest
文件中。
得到了确切的错误信息。
我花了一个小时才意识到手机上的蓝牙未启用。打开它后,它按预期工作。
如果您的应用是第三方应用(非系统应用),则不能使用此权限。要了解更多信息,请参阅 Android API:BLUETOOTH_PRIVILEGED
我运行这个错误,只有我可以说,你需要将你的应用程序安装为系统特权应用程序,去系统文件夹并尝试将应用程序复制到应用程序文件夹或 priv_app 文件夹。在我的 Android 平台上,当我在 priv_app 文件夹中为我的应用创建文件夹并将我的 apk 复制到其中并重新启动 Android 时,一切正常。我的情况是,我在一开始就在清单中添加了所有这些权限,但它只有在上述这一步之后才起作用。
试试这个:
1)从您的权限中删除“android.permission.BLUETOOTH_PRIVILEGED”。
2)删除“android.permission.BLUETOOTH”。
3)添加“android.permission.BLUETOOTH_ADMIN”,仅此而已。
参考资料说这是唯一需要的许可。https://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#createBond()
编辑:如果您已经包含“bluetooth_admin”,可能是平台问题。他们之前可能不支持该功能。也许您应该针对更高的 min-sdk-platform ,我使用 Android 20 作为最低要求(但从未尝试过该功能)。
在你的清单中试试这个
<user-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
注意用户在第一行没有使用权限。直到我切换它,由于某种原因,我一直得到
java.lang.SecurityException:需要 BLUETOOTH_ADMIN 权限