From f351f09db9ab8e7eb6d44485399c1ca4267d6732 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E5=AD=99=E6=98=A5=E9=98=B3?= Date: Tue, 30 Dec 2025 17:07:02 +0800 Subject: [PATCH] =?utf8?q?=E4=BC=98=E5=8C=96=E5=85=B3=E9=97=AD=E6=B5=81?= =?utf8?q?=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../thunderbird/src/ThunderBirdPresenter.cpp | 35 +++++++------------ 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp index f52bc3291..7a7f6756b 100644 --- a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdPresenter.cpp @@ -451,14 +451,14 @@ namespace OHOS ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_DIALOGUEVIEW, ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_SPEAKING); } else if(currentView == THUNDERBIRD_DIALOGUEVIEW && currentSubView == ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_SPEAKING) { // 检查 WebSocket 连接状态,如果正在重连,等待重连完成 - int wsState = ln_ws_get_connection_state(); - bool wsConnected = (wsState == 2); // WS_STATE_CONNECTED = 2 + // int wsState = ln_ws_get_connection_state(); + // bool wsConnected = (wsState == 2); // WS_STATE_CONNECTED = 2 - if (!wsConnected) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HandleDialogueFunction: WebSocket未连接(状态=%d),等待连接完成", wsState); - // WebSocket 未连接,不执行操作,避免状态混乱 - return; - } + // if (!wsConnected) { + // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HandleDialogueFunction: WebSocket未连接(状态=%d),等待连接完成", wsState); + // // WebSocket 未连接,不执行操作,避免状态混乱 + // return; + // } // 通过异步线程执行复杂操作,避免阻塞UI线程和栈溢出 #if 0 // ThunderBirdMainView::ComplexOperationThread(true); @@ -1255,11 +1255,6 @@ namespace OHOS } else if(currentView == THUNDERBIRD_DIALOGUEVIEW) { - if(isDialogueExitFinished == false) - { - return; - } - isDialogueExitFinished = false; WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "退出对话模式,当前子状态: %d", currentSubView); ScreenAlwaysOnCtr(CANCEL_SCREEN_ALWAYS_ON); @@ -1276,14 +1271,8 @@ namespace OHOS // 停止实际的音频播放 // ai_media_play_stop(); // 退出对话模式时恢复表情 - //如果ws未连接,则不发送打断请求 - int wsState = ln_ws_get_connection_state(); - bool wsConnected = (wsState == 2); // WS_STATE_CONNECTED = 2 - if(wsConnected) - { AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("退出对话"); - } do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); // 退出对话模式,执行清理 @@ -1292,10 +1281,10 @@ namespace OHOS // 先设置退出标志,防止录音结束回调误判为正常录音结束 isDialogueing = false; // 等待视频切换完成,避免在视频切换过程中退出导致资源冲突 - // if (ThunderBirdMainView::GetInstance() && ThunderBirdMainView::IsSwitchingVideo()) { - // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ThunderBirdPresenter::HandleFuncKeyLongPress: 等待视频切换完成"); - // ThunderBirdMainView::WaitForVideoSwitchComplete(2000); - // } + if (ThunderBirdMainView::GetInstance() && ThunderBirdMainView::IsSwitchingVideo()) { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ThunderBirdPresenter::HandleFuncKeyLongPress: 等待视频切换完成"); + ThunderBirdMainView::WaitForVideoSwitchComplete(2000); + } // 检查绑定状态,如果未绑定则跳转到 THUNDERBIRD_GUIDEVIEW_5 if (!ThunderBirdModel::GetInstance()->getbind_status()) { @@ -1313,7 +1302,7 @@ namespace OHOS { ThunderBirdReminderView::GetInstance()->HideAll(); } - isDialogueExitFinished = true; + } //当为故事模式 else if(currentView == THUNDERBIRD_LULLABYVIEW && currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_4) -- 2.17.1