收藏
回答

为什么小程序的蓝牙开启后一直报10008,discovering 为false



/*开启蓝牙设备*/
 openBluetoothAdapter: function () {
 
   var that = this;
   wx.showLoading({
     title: '开启蓝牙适配'
   });
   wx.openBluetoothAdapter({
     success: function (res) {
       console.log("初始化蓝牙适配器");
       console.log(res);
       that.getBluetoothAdapterState();
     },
     fail: function (err) {
       console.log(err);
       wx.showToast({
         title: '蓝牙初始化失败',
         icon: 'success',
         duration: 2000
       })
       setTimeout(function () {
         wx.hideToast()
       }, 2000)
     }
   });
   wx.onBluetoothAdapterStateChange(function (res) {
     var available = res.available;
     if (available) {
       that.getBluetoothAdapterState();
     }
   })
 },
 /*获取本机蓝牙适配器状态*/
 getBluetoothAdapterState: function () {
   var that = this;
   wx.getBluetoothAdapterState({
     success: function (res) {
       var available = res.available,
         discovering = res.discovering;
         console.log(res)
       if (!available) {
         wx.showToast({
           title: '设备无法开启蓝牙连接',
           icon: 'success',
           duration: 2000
         })
         setTimeout(function () {
           wx.hideToast()
         }, 2000)
       }
       else {
         if (!discovering) {
           that.startBluetoothDevicesDiscovery();
           that.getConnectedBluetoothDevices();
         }
       }
     }
   })
 },
 startBluetoothDevicesDiscovery: function () {
   var that = this;
   wx.showLoading({
     title: '蓝牙搜索'
   });
   wx.startBluetoothDevicesDiscovery({
     services: [],
     allowDuplicatesKey: false,
     success: function (res) {
       if (!res.isDiscovering) {
         that.getBluetoothAdapterState();
       }
       else {
         that.onBluetoothDeviceFound();
       }
     },
     fail: function (err) {
       console.log(err);
     }
   });
 
 
 
 
 },
 /**获取在小程序蓝牙模块生效期间所有已发现的蓝牙设备,包括已经和本机处于连接状态的设备。*/
 getBluetoothDevices: function () {
   var that = this;
   wx.getBluetoothDevices({
     success: function (res) {
       console.log(res)
     }
   })
 
 },
 /**监听寻找到新设备的事件*/
 onBluetoothDeviceFound: function () {
   var that = this;
   wx.onBluetoothDeviceFound(function (res) {
     console.log('new device list has founded')
     console.log(res);
     if (res.devices[0]) {
       var name = res.devices[0]['name'];
     
 
       var deviceId = res.devices[0]['deviceId'];
      that.deviceId = deviceId;
        console.log(that.deviceId);
        that.startConnectDevices();
             
     }
   })
 
 
 },
 /**根据 uuid 获取处于已连接状态的设备*/
 getConnectedBluetoothDevices: function () {
   var that = this;
   that.createBLEConnection()
   wx.getConnectedBluetoothDevices({
     success: function (res) {
       console.log(res)
       //
 
     }
   })
 },


回答关注问题邀请回答
收藏

2 个回答

  • 吕重阳
    吕重阳
    2021-10-10

    解决了吗?哥们

    2021-10-10
    有用
    回复
  • 寇凯成
    寇凯成
    2018-04-28

    解决了吗哥们

    2018-04-28
    有用
    回复
登录 后发表内容