我用蓝牙给设备进行文件传输,因为要连续发送,所以显得特别慢。
我发送数据之后,过了一秒才收到readBLECharacteristicValue的成功回调,然后要再过一秒多才会在onBLECharacteristicValueChange里收到回调,往来数据需要2秒钟,这对于传输文件来说太慢了,安卓上面就很快,有什么办法提高响应速度么。
初步推测是底层onBLECharacteristicValueChange有问题,无法正常监听,第一次会返回一个错误消息,read之后才会收到正确返回。
我用蓝牙给设备进行文件传输,因为要连续发送,所以显得特别慢。
我发送数据之后,过了一秒才收到readBLECharacteristicValue的成功回调,然后要再过一秒多才会在onBLECharacteristicValueChange里收到回调,往来数据需要2秒钟,这对于传输文件来说太慢了,安卓上面就很快,有什么办法提高响应速度么。
初步推测是底层onBLECharacteristicValueChange有问题,无法正常监听,第一次会返回一个错误消息,read之后才会收到正确返回。
CLP
修改了设备代码?? 这是啥意思
2019-07-03 11:37
花鸟风月 (作者)
回复 CLP: 就是蓝牙设备的代码
2019-07-04 15:01
CLP
回复 花鸟风月: 不是API的调用顺序什么的?
2019-07-04 15:05
花鸟风月 (作者)
回复 CLP: 我看BLE论坛里面说BLE是可以支持连续发送几包数据的,但是我间隔10ms调用wirte只有第一包能发送成功,然后再测试发现,应该是要等上一包成功之后再发送下一包,才会成功,两包间隔相差40ms以上,你们可以支持一下连续发包机制么,这是文章链接https://devzone.nordicsemi.com/f/nordic-q-a/1105/how-do-i-calculate-throughput-for-a-ble-link
2019-07-09 13:44
CLP
回复 花鸟风月: 安卓还是iOS??
2019-07-09 14:26
花鸟风月 (作者)
回复 CLP: 安卓和IOS都是可以的,安卓可以在一个连接间隔里连续发送4包数据,苹果可以发送6包,您可以看我上面发的链接
2019-07-09 15:58
花鸟风月 (作者)
回复 CLP: 这个连续发包的功能只有部分芯片支持
2019-07-09 15:59
麋鹿鲁
“修改了设备代码” 是具体做了哪些操作呢?有点搞不明白
2023-06-12 17:04