服务号 蓝牙扫描后 onScanWXDeviceResult 不回调
发布于 5 年前 作者 mingliang 16490 次浏览 来自 问答
wx.invoke('startScanWXDevice', {'connType' : 'blue',btVersion: 'ble'}, function(res) {

   alert(JSON.stringify(res));
});

这里提示成功了。

wx.ready(function () {
// 初始化设备库函数
   wx.invoke('openWXDeviceLib', { 'brandUserName': 'gh_b4ed57a5e824','connType': 'blue'}, function (res) {

alert("openWXDeviceLib " + JSON.stringify(res));

       //新增步骤-先判断是否有已经绑定设备
       wx.invoke('getWXDeviceInfos',  {'connType':'blue'}, function(res) {
alert("getWXDeviceInfos " + JSON.stringify(res));
       });
   });

   console.log("on onScanWXDeviceResult");
   wx.on('onScanWXDeviceResult',function(res){
alert("onScanWXDeviceResult " + JSON.stringify(res));
   });

   //手机蓝牙状态改变事件
   console.log("on onWXDeviceBluetoothStateChange");
   wx.on('onWXDeviceBluetoothStateChange', function(res){
alert("onWXDeviceBluetoothStateChange " + JSON.stringify(res));
   });
   //设备绑定状态改变事件
   console.log("on onWXDeviceBindStateChange");
   wx.on('onWXDeviceBindStateChange', function(res) {
alert("onWXDeviceBindStateChange " + JSON.stringify(res));
   });

   //接收到设备数据
   console.log("on onReceiveDataFromWXDevice");
   wx.on('onReceiveDataFromWXDevice', function(res) {
console.log("onReceiveDataFromWXDevice"  + JSON.stringify(res));
       alert("onReceiveDataFromWXDevice " + JSON.stringify(res));
   });

});

但是 ‘onScanWXDeviceResult’ 不执行回调,不知道为什么。

但是我可以监听到  onWXDeviceBluetoothStateChange  ,就是我打开和关闭蓝牙,都会弹出来{“state”:“on”},提示蓝牙打开了和关闭了。

 

5 回复

没人维护,文档方法调不通,出问题不知道哪的问题。都9102年我还是收不到onScanWXDeviceResult回调

请问你的这个问题解决了吗?我也遇到了同样的问题

我的是扫描wifi设备 , IOS可以扫描到,Android扫不到

iphone android 都试过,都一样。

onScanWXDeviceResult 有几点疑问:

1、能否扫描到周围所有的蓝牙设备?

2、还是只能扫描在硬件接入平台注册的mac地址?

手机系统和平台是什么呢?

回到顶部