s***@icloud.com
s***@icloud.com
  • 发布:2023-05-15 19:41
  • 更新:2023-06-28 18:07
  • 阅读:382

【报Bug】iOS16.2 uni.getSystemSetting(),bluetoothEnabled始终返回false

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows11

HBuilderX类型: 正式

HBuilderX版本号: 3.7.11

手机系统: iOS

手机系统版本号: iOS 16

手机厂商: 苹果

手机机型: iPhone12

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

开启手机蓝牙开关,调用uni.getSystemSetting()

预期结果:

bluetoothEnabled为true

实际结果:

bluetoothEnabled为false

bug描述:

设备蓝牙开启 但是uni.getSystemSetting()返回值bluetoothEnabled为false
{
"locationEnabled": true,
"wifiEnabled": true,
"bluetoothEnabled": false,
"deviceOrientation": "portrait"
}

2023-05-15 19:41 负责人:DCloud_iOS_WZT 分享
已邀请:
Diligent_UI

Diligent_UI - 【插件开发】【专治疑难杂症】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=193663(微信搜索飘逸科技UI小程序直接体验)】【骗子请绕道】问题咨询请加QQ群:120594820,代表作灵感实用工具小程序

从权限问题、设备设置问题、兼容性问题三个方面排查

DCloud_iOS_WZT

DCloud_iOS_WZT

看下是否勾选了蓝牙模块

2***@qq.com

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

要回复问题请先登录注册