diff --git a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/XunFeiAsrHelper.swift b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/XunFeiAsrHelper.swift index 3ec31244c..e2ddd5915 100644 --- a/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/XunFeiAsrHelper.swift +++ b/local_plugins/azure_speech/ios/azure_speech/Sources/azure_speech/XunFeiAsrHelper.swift @@ -66,7 +66,10 @@ class XunFeiAsrHelper: NSObject, URLSessionWebSocketDelegate { let endJson = "{\"end\": true, \"sessionId\": \"\(sessionId)\"}" let message = URLSessionWebSocketTask.Message.string(endJson) webSocketTask.send(message) { _ in } - webSocketTask.cancel(with: .normalClosure, reason: "User stopped".data(using: .utf8)) + + DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) { + webSocketTask.cancel(with: .normalClosure, reason: "User stopped".data(using: .utf8)) + } } webSocketTask = nil }