From db037587ea84829a5f3f1973ccdf5f752950e5b8 Mon Sep 17 00:00:00 2001 From: xue <2144439972@qq.com> Date: Thu, 12 Feb 2026 10:50:57 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E5=A4=8D=E5=AF=B9=E8=AF=9D=E5=BC=80?= =?utf8?q?=E5=A7=8B=E5=93=84=E7=9D=A1=E6=97=B6=E7=9A=84=E6=94=B6=E9=9F=B3?= =?utf8?q?=E6=8C=87=E7=A4=BA=E7=81=AF=E7=8A=B6=E6=80=81=E9=94=99=E8=AF=AFb?= =?utf8?q?ug?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../thunderbird/src/ThunderBirdModel.cpp | 30 +++++-------------- .../thunderbird/src/ThunderBirdPresenter.cpp | 5 +++- 2 files changed, 11 insertions(+), 24 deletions(-) diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdModel.cpp b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdModel.cpp index 71b91329b..a0cb8b0f9 100644 --- a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdModel.cpp +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdModel.cpp @@ -3566,33 +3566,17 @@ extern "C" { void ThunderBirdModel::HandleAudioPlaybackStart() { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleAudioPlaybackStart"); - ThunderBirdMainView *view = ThunderBirdMainView::GetInstance(); - if (view) { - int currentView = view->GetCurrentView(); - int currentSubView = view->GetCurrentSubView(); - // 对话模式下若“音频开始播放”早于“录音结束”回调:此时仍为聆听中,需先切到说话中再推送文本,避免出现“聆听中还在播放上一句”的错位 - if (currentView == THUNDERBIRD_DIALOGUEVIEW && - currentSubView == ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_LISTENING) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleAudioPlaybackStart: 对话聆听中收到播放开始,先切到说话中"); - view->ChangeView(currentView, THUNDERBIRD_DIALOGUEVIEW, ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_SPEAKING); - if (view->listenIcon) { - view->listenIcon->SetVisible(false); - } - } - } // 音频开始播放时,从队列中取出对应的文本并推送 DequeueAndPushAudioText(); // 检查是否在THUNDERBIRD_LULLABYVIEW_3界面,如果是,标记角色开始询问 - if (view) { - int currentView = view->GetCurrentView(); - int currentSubView = view->GetCurrentSubView(); - if (currentView == THUNDERBIRD_LULLABYVIEW && - currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_3) - { - m_lullabyView3InquiryStarted = true; - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleAudioPlaybackStart: THUNDERBIRD_LULLABYVIEW_3界面,角色开始询问"); - } + int currentView = ThunderBirdMainView::GetInstance()->GetCurrentView(); + int currentSubView = ThunderBirdMainView::GetInstance()->GetCurrentSubView(); + if (currentView == THUNDERBIRD_LULLABYVIEW && + currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_3) + { + m_lullabyView3InquiryStarted = true; + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleAudioPlaybackStart: THUNDERBIRD_LULLABYVIEW_3界面,角色开始询问"); } } 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 54803bcaa..9a250eb29 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 @@ -818,8 +818,11 @@ namespace OHOS case ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_3: { // ln_http_download_init(); - // 进入哄睡模式时切换为眨眼表情 + // 进入哄睡模式时切换为眨眼表情,关闭VAD并隐藏收音指示灯 do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_INIT_VAD_DISABLE, NULL, 0); + if (ThunderBirdMainView::GetInstance() && ThunderBirdMainView::GetInstance()->listenIcon) { + ThunderBirdMainView::GetInstance()->listenIcon->SetVisible(false); + } ThunderBirdModel::GetInstance()->OnEnterLullabyMode(); ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_LULLABYVIEW, ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_4); // ln_ws_start_audio_chat(LN_AUDIO_CHAT_CHOOSE_STORY_REQUEST); -- 2.17.1