我正在为android构建一个蓝牙应用程序。我有一个用户界面按钮,当我按下它时,我想要进入蓝牙发现模式30秒。我现在所拥有的代码完美地完成了这项工作,但它会生成一个弹出窗口,询问我是否允许蓝牙发现。这弹出有点遗憾我的应用程序的流程,所以有没有办法绕过它?抑制蓝牙发现弹出
Q
抑制蓝牙发现弹出
0
A
回答
0
不,你不能绕过它。 Android 6引入了动态权限。这允许用户更精确地指定他想授予App的权限。
对于Android用户,它不会破坏流程。这对他来说很正常。这就是Android的工作原理(以及iOS也是如此)。
请参见:https://developer.android.com/guide/topics/permissions/requesting.html
的BLUETOOTH_ADMIN
被认为是正常的许可。但是对于扫描,您还需要ACCESS_COARSE_LOCATION
和/或ACCESS_FINE_LOCATION
。这些被归类为危险的权限,这就是为什么你需要询问用户一次。
还看到:BluetoothLeScanner.startScan()
有关于如何处理权限的几个博客帖子。 James Montemagno为此发布了一个插件。
0
是的。您可以检查它是否启用,启用它编程,
BluetoothManager btm = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);
BluetoothAdapter bta = btm.getAdapter();
if (!bta.isEnabled()) {
boolean ret = bta.enable();
if (!ret) {
// enable failed!
}
}
你需要有BLUETOOTH_ADMIN
权限,
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
+0
我的问题是不是与启用适配器,与开始的发现。我可以启用适配器,但发现过程仍会抛出一个弹出窗口。我编辑了这个问题以更好地反映这个问题 –
相关问题
- 1. 强制Android蓝牙发现
- 2. Android蓝牙发现
- 3. 蓝牙UUID发现
- 4. Android:发现蓝牙设备时出错
- 5. 制作Android蓝牙不断发现
- 6. 蓝牙不发现设备
- 7. 蓝牙发现与连接
- 8. Android蓝牙服务发现
- 9. 使蓝牙可发现
- 10. Android蓝牙可发现性
- 11. BlueCove蓝牙设备发现
- 12. Android蓝牙无需发现和发现!
- 13. 蓝牙LE HID弹出键码?
- 14. 检查蓝牙关闭时是否可以发现Android蓝牙?
- 15. 奇怪的行为与蓝牙发现
- 16. Android的 - 蓝牙设备发现错误
- 17. 蓝牙发现不起作用
- 18. 可通过Android-TV发现蓝牙
- 19. 无法取消蓝牙发现过程
- 20. 错误的蓝牙设备发现
- 21. 蓝牙发现设备类型问题
- 22. 发现期间的蓝牙RSSI测量
- 23. 发现并配对蓝牙设备
- 24. Android 7.0蓝牙发现无法启动
- 25. Kivy和发现蓝牙设备
- 26. 快速发现蓝牙设备
- 27. 扩展Android蓝牙可发现性
- 28. 蟒蛇蓝牙发现与pybluez
- 29. 开始内置蓝牙发现活动
- 30. iOS蓝牙不发现设备
当用户在弹出窗口上按下时出现了一个事件吗?如果我知道提示何时结束,它不会如此破坏流量 –
有几篇关于如何处理权限的博客帖子。 James Montemagno为此发布了一个插件。我更新了我的答案并添加了链接 –