}
else if(currentView == THUNDERBIRD_DIALOGUEVIEW)
{
+ if(isDialogueExitFinished == false)
+ {
+ return;
+ }
+ isDialogueExitFinished = false;
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "退出对话模式,当前子状态: %d", currentSubView);
ScreenAlwaysOnCtr(CANCEL_SCREEN_ALWAYS_ON);
// 停止实际的音频播放
// 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);
// 退出对话模式,执行清理
// 先设置退出标志,防止录音结束回调误判为正常录音结束
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()) {
{
ThunderBirdReminderView::GetInstance()->HideAll();
}
-
+ isDialogueExitFinished = true;
}
//当为故事模式
else if(currentView == THUNDERBIRD_LULLABYVIEW && currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_4)