收藏
回答

小程序蓝牙API搜索不到蓝牙设备

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug wx.startBluetoothDevicesDiscovery(OBJECT) 客户端 6.7.2 2.2.4

- 使用小程序蓝牙文档中的示例程序,运行之后搜索不到蓝牙设备


- 首页头像点进去,点击开始搜索,搜索不到附近已开启的蓝牙设备



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

25 个回答

  • nickname
    nickname
    2018-08-27

    你好,请确认已经开启手机蓝牙,另外麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2018-08-27
    赞同
    回复 7
    • Androgen
      Androgen
      2018-08-27

      wechatide://minicode/OCNfJYmZ7c1D

      2018-08-27
      赞同
      回复
    • Androgen
      Androgen
      2018-08-27

      使用的是文档里提供的测试代码片段

      2018-08-27
      赞同
      回复
    • nickname
      nickname
      2018-08-28回复Androgen

      你好,直接打印搜索结果是有的,请自行检查代码逻辑

      2018-08-28
      赞同
      回复
    • Androgen
      Androgen
      2018-08-28回复nickname

      你好,旁边几个开着蓝牙的手机、笔记本都搜不到,而且搜到的都是一些name和localname为空的设备

      2018-08-28
      赞同
      回复
    • Androgen
      Androgen
      2018-08-28回复nickname

      无法进一步执行写入数据等操作

      2018-08-28
      赞同
      回复
    查看更多(2)
  • Androgen
    Androgen
    2018-08-27

    已开启手机蓝牙

    2018-08-27
    赞同
    回复
  • Tummy
    Tummy
    2018-08-28

    定位权限以及定位开关打开了么?部分手机会因为没有定位权限搜索不到设备。

    2018-08-28
    赞同
    回复 1
    • Androgen
      Androgen
      2018-08-29

      定位权限打开了

      2018-08-29
      赞同
      回复
  • 阿Q
    阿Q
    2018-08-29

    要用低功耗的蓝牙设备才可以搜到,连接

    2018-08-29
    赞同
    回复 3
    • Androgen
      Androgen
      2018-08-29

      你好,普通手机、笔记本开启的蓝牙搜索不到吗?

      2018-08-29
      赞同
      回复
    • 阿Q
      阿Q
      2018-08-29

      当时我是测蓝牙打印机,手机搜不到,手表,耳机可以,打印机也可以

      2018-08-29
      赞同
      回复
    • Androgen
      Androgen
      2018-08-29回复阿Q

      我试试,谢谢

      2018-08-29
      赞同
      回复
  • McWhy
    McWhy
    2018-08-29

    手机搜索手机不可以,需要搜索蓝牙耳机、蓝牙电子称等其他低功耗设备。

    我之前测试这个用手机搜索手机一直搜索不到,后来搜到了邻居的蓝牙电子称。

    2018-08-29
    赞同
    回复 1
    • Androgen
      Androgen
      2018-08-29

      我测测,谢谢

      2018-08-29
      赞同
      回复
  • 陈,ea要dai住你
    陈,ea要dai住你
    2018-08-30

    请问楼主,这个小程序的蓝牙是不是只能搜索除手机以外的蓝牙设备???

    2018-08-30
    赞同
    回复 6
    • Androgen
      Androgen
      2018-08-30

      手机搜不到,有的蓝牙耳机也搜不到

      2018-08-30
      赞同
      回复
    • Androgen
      Androgen
      2018-08-30

       我的代码没调试好,设备搜不到

      2018-08-30
      赞同
      回复
    • 陈,ea要dai住你
      陈,ea要dai住你
      2018-08-30回复Androgen

      嗯嗯,我也试了好多手机,以为自己文档错了,后来才发现是手机根本不能搜手机,蓝牙耳机还没测试。

      2018-08-30
      赞同
      回复
    • Androgen
      Androgen
      2018-08-30回复陈,ea要dai住你

      文档里也没有说明,还有待完善

      2018-08-30
      赞同
      回复
    • 陈,ea要dai住你
      陈,ea要dai住你
      2018-08-30回复Androgen

      嗯嗯,这样的话就专注测蓝牙设备了,就不用纠结为啥搜不到手机了,多谢LZ

      2018-08-30
      赞同
      回复
    查看更多(1)
  • Mr.li
    Mr.li
    2018-09-29

    全是未知设备很操蛋啊...什么都搜不到...蓝牙耳机,电脑,手机..



    onLoad:function(){},
      taponce:function(){
      var deviceId;
      var i = 0;
      var serviceId = [];
      var characteristicId = [];
      wx.openBluetoothAdapter({
        success: function (res) {
          console.log(res, "success");
          wx.startBluetoothDevicesDiscovery({
            services: [],
            success: function (res) {
              console.log(res)
            },
            fail: function (res) {
              console.log("fail")
            },
          })
        },
        fail: function (res) {
          console.log("fail")
        },
      }),
     
      wx.getBluetoothDevices({
        success: function (res) {
          console.log("getBluetoothDevices",res)
          i = 0;
          while (res.devices[i]) {
            console.log("i",i);
            console.log(res.devices[i].name, res.devices[i].deviceId);
            if (res.devices[i].name == 'YahBoom_BL') {
              deviceId = res.devices[i].deviceId;
              console.log(deviceId);
            }
            i++;
          }
        }
      }),
      wx.getBLEDeviceServices({
        deviceId: deviceId,
        success: function (res) {
          console.log("getBLEDeviceServices.services",res.services);
          i = 0;
          while (res.services[i]) {
            serviceId[i] = res.services[i].uuid;
            console.log(serviceId[i]);
            i++;
          }
        },
      }),
      wx.getBLEDeviceCharacteristics({
        deviceId: deviceId,
        serviceId: serviceId[1],
        success: function (res) {
          i = 0;
          while (res.characteristics[i]) {
            characteristicId[i] = res.characteristics[i].uuid;
            console.log(characteristicId[i]);
            i++;
          }
        }
      })


    2018-09-29
    赞同
    回复