在Android设备上运行小程序,Android版本7.0,微信版本6.6.7,基础库版本2.1.2 [141],代码片段如下:

// 向蓝牙设备分20次发送数据,每次发送150个字节,一共发送3000字节

for(let i = 0; i < 20; i++){

    let buffer = new ArrayBuffer(150)

    let dataView = new DataView(buffer)

    dataView.setUint32(0, 0x12345678)

    dataView.setUint32(146, 0xfedcba98)

    

    wx.writeBLECharacteristicValue({

        deviceId: this._deviceId,                        //已正确获取

        serviceId: this._serviceId,                      //已正确获取

        characteristicId: this._characteristicId,   //已正确获取

        value: buffer

    })

}

程序可以运行,并且能够返回成功,实际代码已实现success回调,并能够返回成功信息



Android设备打开开发者模式,获取蓝牙HCI日志如下:


可见,代码实际发送150个字节的数据,但是蓝牙log显示,实际只发送了20个字节的数据



如上现象,是API的限制还是API的Bug,请麻烦说明。

最好的结果是请API提供接口:

获取能够发送数据量的最大值

如果发送超过了最大的数据量,请返回错误信息提示

能够通过API一次性发送200个字节!!!




展开全部
收起
0回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部