if (ThunderBirdMainView::GetInstance()) {
int currentView = ThunderBirdMainView::GetInstance()->GetCurrentView(); //获取当前视图
+
+ // 如果当前视图已经是蓝牙界面,说明是从蓝牙连接触发的退出,不需要再切换到对话界面
+ if (currentView == THUNDERBIRD_BLUEVIEW) {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HandleSleepModeEnd: 当前已在蓝牙界面,跳过切换到对话界面");
+ // 退出哄睡模式时恢复时间线表情
+ OnExitLullabyMode();
+ if (ThunderBirdMainView::GetInstance() && ThunderBirdMainView::GetInstance()->listenIcon) {
+ ThunderBirdMainView::GetInstance()->listenIcon->SetVisible(false);
+ }
+ //直接退出到状态显示界面
+ 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);
+ return;
+ }
+
// 退出哄睡模式时恢复时间线表情
OnExitLullabyMode();
if (ThunderBirdMainView::GetInstance() && ThunderBirdMainView::GetInstance()->listenIcon) {
//亮屏
uapi_set_screen_on_api();
int currentView = ThunderBirdMainView::GetInstance()->GetCurrentView(); //获取当前视图
+
+ // 如果当前在哄睡模式,清除时间线表情获取标志(因为要退出到蓝牙界面,不需要获取时间线表情)
+ if (currentView == THUNDERBIRD_LULLABYVIEW) {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HandleBluetoothConnect: 当前在哄睡模式,清除时间线表情获取标志(退出到蓝牙界面)");
+ m_needGetTimelineExpression = false;
+ }
+
// 检查是否有已绑定的设备
BluetoothModel* btModel = BluetoothModel::GetInstance();
if (btModel != nullptr) {