From 190c5e8a7167b67b6dae811bd8ec9d3aaad7ba8f Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Tue, 9 Sep 2025 18:54:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E4=BC=98=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yunqiinnovation/chat_api/ChatApiService.kt | 18 ++++++++++-------- .../yunqiinnovation/qq_music/QQMusicManager.kt | 2 +- .../qq_music/QQMusicSingleton.kt | 8 ++++++-- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/local_plugins/chat_api/android/src/main/kotlin/com/yunqiinnovation/chat_api/ChatApiService.kt b/local_plugins/chat_api/android/src/main/kotlin/com/yunqiinnovation/chat_api/ChatApiService.kt index bb0c13109..866248973 100644 --- a/local_plugins/chat_api/android/src/main/kotlin/com/yunqiinnovation/chat_api/ChatApiService.kt +++ b/local_plugins/chat_api/android/src/main/kotlin/com/yunqiinnovation/chat_api/ChatApiService.kt @@ -449,14 +449,16 @@ class ChatApiService(private val context: android.content.Context? = null) : Cor return@collect } Log.d(TAG, "liwei-------------------------开始AI 对话 7-3") - // 处理普通文本内容 - delta.content?.let { content -> - try { - replyContext += content - getSessionCallback(sessionid)?.onToken(sessionid,content) - } catch (e: Exception) { - Log.e(TAG, "onToken回调异常: ${e.message}", e) - // 不重新抛出异常,继续处理后续内容 + if (delta.toolCalls == null){ + // 处理普通文本内容 + delta.content?.let { content -> + try { + replyContext += content + getSessionCallback(sessionid)?.onToken(sessionid,content) + } catch (e: Exception) { + Log.e(TAG, "onToken回调异常: ${e.message}", e) + // 不重新抛出异常,继续处理后续内容 + } } } Log.d(TAG, "liwei-------------------------开始AI 对话 7-4") diff --git a/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicManager.kt b/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicManager.kt index 472b3b3b6..e60c7e185 100644 --- a/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicManager.kt +++ b/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicManager.kt @@ -169,6 +169,7 @@ class QQMusicManager(private val context: Context) { Log.d(TAG, "QQ音乐服务连接断开") qqmusicApi = null isBindQQMusicService = false + } }, Context.BIND_AUTO_CREATE) Log.d(TAG, "重试绑定QQ音乐服务 $retryResult") @@ -326,7 +327,6 @@ class QQMusicManager(private val context: Context) { putStringArrayList("midList", ArrayList(songMids)) putInt("index", index) } - // 直接调用executeAsync,不接收返回值 qqmusicApi?.executeAsync("playSongMidAtIndex", params, object : IQQMusicApiCallback.Stub() { override fun onReturn(result: Bundle?) { diff --git a/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicSingleton.kt b/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicSingleton.kt index 9b9762381..4e371876a 100644 --- a/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicSingleton.kt +++ b/local_plugins/qq_music/android/src/main/kotlin/com/yunqiinnovation/qq_music/QQMusicSingleton.kt @@ -518,12 +518,16 @@ class QQMusicSingleton private constructor() { } } } - } }) } override fun onError(errorCode: Int, errorMessage: String) { - callback(Result.failure(Exception("$actionName 失败: $errorMessage"))) + Log.e(TAG, "${actionName}失败: $errorCode $errorMessage") + if (allagain > 0 && curragain < allagain){ //重试机制 + executePlaybackAction(actionName,curragain+1,allagain,action) + }else{ + callback(Result.failure(Exception("$actionName 失败: $errorMessage"))) + } } })