Android-JL_OTA
Android-JL_OTA copied to clipboard
升级后再升级会失败是什么原因?
用的是1.9.2,app自己维护一套蓝牙连接,当需要ota的时候断开app的蓝牙连接,使用你们demo里那一套连接重新连接上然后进行升级。升级成功后断开你们那一套蓝牙连接,再使用app本身那一套进行重连。
首次升级是成功的,但是再次升级就不行了,再次升级: BtEventCallback的onConnection会返回CONNECTION_FAILED
但是我看了明明还在走onDiscovery为什么会回调失败呢?
升级成功后需要释放什么?
升级成功,设备会重启,不需要释放什么。如果不需要OTA,可以把 OTAManager#release()。
需要附上打印日志分析。参考调试说明
按照你的描述,频繁的蓝牙连接与断开,可能导致设备连接不上,可以重试。
根据日志分析,你是重复传入已连接设备的状态,导致多次执行初始化流程,设备认证流程失败,出现初始化失败的情况。
20240903154249.248 i ota:JieliOTAManager : -onBleDataBlockChanged- device : name : null ,type : 0 ,address : FF:FF:10:00:00:4E, block : 514, status : 0
20240903154249.252 i ota:JieliOTAManager : -onBtDeviceConnection- device : name : null ,type : 0 ,address : FF:FF:10:00:00:4E, 1
20240903154249.256 i ota:RcspAuth : -startAuth- device = name : null ,type : 0 ,address : FF:FF:10:00:00:4E
20240903154249.257 d ota:SendBleDataThread : addSendTask : 508
20240903154249.259 d ota:BleManager : writeDataByBle : send ret : true, data = 00C13B4005D2DF0FE0094E925AAC938B7E
20240903154249.260 i ota:RcspAuth : -sendAuthDataToDevice- device : name : null ,type : 0 ,address : FF:FF:10:00:00:4E, authData : 00C13B4005D2DF0FE0094E925AAC938B7E
20240903154249.269 d ota:JieliBleManager : onCharacteristicWrite : device : name : null ,type : 0 ,address : FF:FF:10:00:00:4E, serviceUuid = 0000ae00-0000-1000-8000-00805f9b34fb, characteristicUuid = 0000ae01-0000-1000-8000-00805f9b34fb, status = 0,
data : [00C13B4005D2DF0FE0094E925AAC938B7E]
20240903154249.270 i ota:JieliOTAManager : -onBtDeviceConnection- device : name : null ,type : 0 ,address : FF:FF:10:00:00:4E, 1
关键词: -onBtDeviceConnection-
看下是否回调没有及时注销,重复添加蓝牙回调导致的。