收藏
回答

蓝牙连接断开,重新连接 调用wx.getBLEDeviceServices获取的uuid没有主服务?



第一次连接成功和蓝牙通信成功,手动断开连接重连步骤=>wx.createBLEConnection=>wx.getBLEDeviceServices获取的uuid没有主服务,不能和蓝牙进行通信了。重新连接返回的2个00001800 和 00001801 UUID 的服务是系统行为自带的没有用的


然后,我修改了重新连接步骤=>startBluetoothDevicesDiscovery=>wx.createBLEConnection=>wx.getBLEDeviceServices获取的uuid有主服务,可以和蓝牙正常通信


文档说,若小程序在之前已有搜索过某个蓝牙设备,并成功建立连接,可直接传入之前搜索获取的 deviceId 直接尝试连接该设备,无需再次进行搜索操作。【还是要重新搜索啊,怎么回事】


我还有个疑问,我现在只要监听到蓝牙断开,就调用closeBluetoothAdapter()有没必要,不是手动断开。 // 关闭蓝牙模块,如果做重连,要从初始化蓝牙开始了


最后一次编辑于  2022-01-05
回答关注问题邀请回答
收藏

1 个回答

  •  
     
    2022-01-05

    是手动调用wx.closeBLEConnection断开连接,来模拟重新连接,不是自动断开连接情况做测试

    2022-01-05
    有用
    回复
登录 后发表内容