收藏
回答

小程序搜不出蓝牙设备

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 客户端 7.0 weChatLib: 2.4.3

- 当前 Bug 的表现(可附上截图)

小米5x手机,最新系统,

wx.openBluetoothAdapter(Object object)  返回初始化成功

wx.getBluetoothAdapterState(Object object)  返回两个true

wx.startBluetoothDevicesDiscovery(Object object) 也返回成功

wx.onBluetoothDeviceFound(function callback) 这一步总是结果是空的。

用官方dome测试也是一样,社区也有人说要打开gps,还是不行,蓝牙是开着就算连上蓝牙耳机了还是不行,有人说只支持低功耗的,又用蓝牙扫描枪连上,也是搜不出任何设备。换一台手机也一样,微信是最新版7.0的。

这到底是什么原因呢?


- 预期表现


- 复现路径


- 提供一个最简复现 Demohttps://developers.weixin.qq.com/s/OF4Y9Gme6rZ4


最后一次编辑于  2018-12-31  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 慧众云服务
    慧众云服务
    01-04

    蓝牙耳机一般都是经典蓝牙模式,HID是USB传输的协议,蓝牙扫码枪得看他的蓝牙模块是不是用的BLE

    01-04
    赞同 1
    回复 1
    • 漫
      01-05

      谢谢你!

      我还以为HID是蓝牙的呢。

      01-05
      回复
  • 加贝
    加贝
    01-02

    微信的小程序只支持BLE模式,你看下蓝牙扫码枪设置的是哪种模式的,有些蓝牙枪还不支持BLE。

    01-02
    赞同 1
    回复 3
    • 漫
      01-02

      谢谢你!刚才看了下说明书,原来扫描枪是HID模式的。

      01-02
      回复
    • 加贝
      加贝
      01-02回复

      看下说明书支持BLE模式不,如果支持是可以设置的。连接后下一步是获取服务列表,然后找到主服务下的可以notify的特征值,监听这个特征值的变化,扫个码看能不能获取到扫的值。

      startBluetoothDevicesDiscovery   搜索

      onBluetoothDeviceFound   发现设备事件

      createBLEConnection   搜索到设备匹配名称 创建连接

      getBLEDeviceServices  获取服务列表

      getBLEDeviceCharacteristics  根据主服务id 获取特征值列表

      notifyBLECharacteristicValueChange  参数 特征值uuid  启用 notify 通知

      onBLECharacteristicValueChange  监听特征值变化接收消息  回调里面查看code


      01-02
      1
      回复
    • 漫
      01-02回复加贝

      你好,看了,不支持。谢谢你!方法我先收藏下来了。

      01-02
      回复