From 66b3daa66ae316151b7e7ef2ccceb9cb0d0c9973 Mon Sep 17 00:00:00 2001 From: xue <2144439972@qq.com> Date: Tue, 20 Jan 2026 09:41:52 +0800 Subject: [PATCH] =?utf8?q?=E4=BC=98=E5=8C=96=E9=9F=B3=E9=A2=91=E9=94=80?= =?utf8?q?=E6=AF=81=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../thunderbird/src/ThunderBirdModel.cpp | 20 +++++++++---------- .../thunderbird/src/ThunderBirdPresenter.cpp | 4 ++-- .../zhihui/leiniao/imsl_ln/ln_api_websocket.c | 4 ++-- code/sdk/zhihui/utils/custom_cmd_service.c | 3 +++ 4 files changed, 17 insertions(+), 14 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 1d0731cdf..3d9b2346d 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 @@ -564,7 +564,7 @@ extern "C" { { SetViewModel(); //do_ln_http_server_send_data(LN_HTTP_SERVICE_CMD_WS_ENTER_SLEEP, NULL, 0); - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("进入OTA"); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); //未绑定状态,也可以进入OTA @@ -1905,7 +1905,7 @@ extern "C" { // 先设置退出标志,防止录音结束回调误判为正常录音结束 ThunderBirdPresenter::GetInstance()->SetDialogueing(false); ln_ws_end_audio_chat();//结束对话 - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("退出对话"); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); ThunderBirdModel::GetInstance()->OnExitDialogueMode(); @@ -1992,7 +1992,7 @@ extern "C" { currentSubView == ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_BIND_SUCCESS) { if (bind_status == false) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "解绑警告界面超时,恢复出厂设置"); - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("恢复出厂设置"); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); restore_factory_settings(); @@ -2437,7 +2437,7 @@ extern "C" { currentSubView == ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_LISTENING)) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HandleScheduleReminder: 在对话界面,先打断语音并退出对话模式,跳转到发呆中界面"); // 打断语音播放并彻底退出对话 - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("日程提醒"); ln_ws_end_audio_chat();//结束对话 do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); @@ -2680,7 +2680,7 @@ extern "C" { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleCharacterConfigChange: 角色配置已更新"); // 角色切换完成后,上报蓝牙连接状态 - ln_bt_report_earphone_connection_status(); + ln_bt_report_earphone_connection_status(false); // 不需要弹窗 WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleCharacterConfigChange: 角色切换完成,已上报蓝牙连接状态"); // SaveCharacterConfig(characterId, characterName, eyesShape, hairColor, eyesColor, hairStyle, screenImageAsEmoji); @@ -3102,7 +3102,7 @@ extern "C" { // 先停止音频聊天,确保WebSocket线程停止接收音频数据 ln_ws_end_audio_chat(); // 强制中断音频播放 - AI_ForceInterrupt(); + // AI_ForceInterrupt(); // 发送中断消息(通知服务器停止发送音频数据) ln_ws_send_voice_chat_interrupt("退出哄睡"); // 等待一小段时间,确保WebSocket线程处理完中断消息 @@ -3147,8 +3147,8 @@ extern "C" { ThunderBirdMainView::GetInstance()->listenIcon->SetVisible(false); } //直接退出到状态显示界面 - AI_ForceInterrupt(); - ln_ws_send_voice_chat_interrupt("退出哄睡"); + // AI_ForceInterrupt(); + // ln_ws_send_voice_chat_interrupt("退出哄睡"); //推送结束故事消息 do_ln_http_server_send_data(LN_HTTP_SERVICE_CMD_STORY_FINISH, NULL, 0); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); @@ -3222,7 +3222,7 @@ extern "C" { // 1. 停止其他音频服务,避免冲突 ln_audio_simple_stop(); - AI_ForceInterrupt(); + // AI_ForceInterrupt(); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); // 2. 跳转到对话说话界面 @@ -3446,7 +3446,7 @@ extern "C" { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleDownloadFile: 无法获取蓝牙图标状态,默认保存为false"); } do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("下载表情"); m_wasInDownloadView = true; // 标记已进入下载界面 NativeAbility::GetInstance().ChangeSlice(VIEW_OTA); 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 35ba0a4e5..54803bcaa 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 @@ -244,7 +244,7 @@ namespace OHOS WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "HandlePowerKey: 长按关机键,进入关机界面"); powerKeyPressed = false; // 重置标志位 // 退出对话模式时恢复表情 - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("关机"); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); // 关闭WebSocket连接,屏蔽小程序下发的命令 @@ -1274,7 +1274,7 @@ namespace OHOS // 停止实际的音频播放 // ai_media_play_stop(); // 退出对话模式时恢复表情 - AI_ForceInterrupt(); + // AI_ForceInterrupt(); ln_ws_send_voice_chat_interrupt("退出对话"); do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_AUDIO_DEINIT, NULL, 0); diff --git a/code/sdk/zhihui/leiniao/imsl_ln/ln_api_websocket.c b/code/sdk/zhihui/leiniao/imsl_ln/ln_api_websocket.c index 63efd84b6..96e867fdd 100644 --- a/code/sdk/zhihui/leiniao/imsl_ln/ln_api_websocket.c +++ b/code/sdk/zhihui/leiniao/imsl_ln/ln_api_websocket.c @@ -3246,9 +3246,9 @@ static void ln_ws_reconnect_success_callback(void) memset(story_theme_cache,0,sizeof(story_theme_cache)); } - // // 设备重新上线后,上报蓝牙状态 + // 设备重新上线后,上报蓝牙状态 // LN_WS_INFO("Device reconnected, reporting Bluetooth status\n"); - // ln_bt_report_earphone_connect ion_status(); + ln_bt_report_earphone_connection_status(false); LN_WS_INFO("Reconnect success event triggered\n"); } diff --git a/code/sdk/zhihui/utils/custom_cmd_service.c b/code/sdk/zhihui/utils/custom_cmd_service.c index a7b8f63f8..4dffad9b6 100644 --- a/code/sdk/zhihui/utils/custom_cmd_service.c +++ b/code/sdk/zhihui/utils/custom_cmd_service.c @@ -31,6 +31,8 @@ #include "custom_utils.h" +#include "ai_media.h" + #ifdef SUPPORT_CAT1_SERVICE #include "cat1_pub_api.h" #endif @@ -501,6 +503,7 @@ case CUSTOM_CMD_MSG_START_AI_ASR: break; case CUSTOM_CMD_MSG_AUDIO_DEINIT: PRINT("Audio deinit via custom cmd\n"); + AI_ForceInterrupt(); ln_ws_audio_deinit(); break; case CUSTOM_CMD_MSG_VAD_AUTH: -- 2.17.1