开启手机蓝牙开关,调用uni.getSystemSetting()
- 发布:2023-05-15 19:41
- 更新:2023-06-28 18:07
- 阅读:382
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows11
HBuilderX类型: 正式
HBuilderX版本号: 3.7.11
手机系统: iOS
手机系统版本号: iOS 16
手机厂商: 苹果
手机机型: iPhone12
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
bluetoothEnabled为true
bluetoothEnabled为true
实际结果:
bluetoothEnabled为false
bluetoothEnabled为false
bug描述:
设备蓝牙开启 但是uni.getSystemSetting()返回值bluetoothEnabled为false
{
"locationEnabled": true,
"wifiEnabled": true,
"bluetoothEnabled": false,
"deviceOrientation": "portrait"
}
3 个回复
Diligent_UI - 【插件开发】【专治疑难杂症】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=193663(微信搜索飘逸科技UI小程序直接体验)】【骗子请绕道】问题咨询请加QQ群:120594820,代表作灵感实用工具小程序
从权限问题、设备设置问题、兼容性问题三个方面排查
DCloud_iOS_WZT
看下是否勾选了蓝牙模块
2***@qq.com
iOS的蓝牙有三种状态:打开、未连接(蓝牙是打开的,无连接任何设备而已)、关闭。1、打开了蓝牙,但是如果没有授权App访问蓝牙,也会返回false。2、蓝牙处于未连接,但是已经授权了App访问蓝牙也会返回false,其实蓝牙是打开的,没有链接任何设备而已,也返回了false,这就有点奇葩了。uni.getSystemSetting()最好结合uni.getAppAuthorizeSetting()一起使用。顺便在吐槽一下,uni-app在权限判断和获取设备设置上的接口,总感觉官方文档写的不清不楚的,写的App权限判断和提示插件下面也是骂声不断 https://ext.dcloud.net.cn/plugin?id=594。想不清楚官方的维护为啥那么差,总之,希望uni-app能越来越好吧。现在回看他们的CTO在之前的公开课演讲真的是不忍直视。
2***@qq.com
蓝牙打开后,都是向上滑动呼出快捷方式窗口,然后点击蓝牙图标关闭蓝牙。这种方法是不能将蓝牙彻底关闭的。大家可能没注意到,我们点击上滑菜单里的蓝牙图标关闭蓝牙,会弹出提醒:蓝牙会在明天之前保持断开状态。这也就说明隔天蓝牙可能就自动开启了。
2023-06-28 18:17