fix(sdk): transferMedia 入口立即把 transferProgress 归零
旧实现里 transferProgress 只在 transferFile() 内部才置 0,但 transferMedia 要先走 validateMediaFormat → aniConverter.convert → getRemoteFileSize → prepareTransfer 这条数秒级异步链,期间字段还停 留在上次结束的 100。集成方 UI 一接上观察就看到旧值 100,体感像「上 次进度被带过来」。 修法:transferMedia 在 connectedDevice 守卫通过后立即 transferProgress = 0, delegate 立即收到 didUpdateProgress(0);后续 transferFile() 内部的 = 0 因 didSet 的 oldValue 守卫被自然跳过,不会重复广播。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -73,6 +73,7 @@ extension DuooomiBleSDK {
|
|||||||
completion(.failure(DuooomiBleError.notConnected))
|
completion(.failure(DuooomiBleError.notConnected))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
transferProgress = 0
|
||||||
let url = fileUrl.trimmingCharacters(in: .whitespacesAndNewlines)
|
let url = fileUrl.trimmingCharacters(in: .whitespacesAndNewlines)
|
||||||
guard !url.isEmpty else {
|
guard !url.isEmpty else {
|
||||||
completion(.failure(DuooomiBleError.transferFailed("Empty file URL")))
|
completion(.failure(DuooomiBleError.transferFailed("Empty file URL")))
|
||||||
|
|||||||
Reference in New Issue
Block a user