From eb67ba2f4b896f0b21e113e9b44a73b63a8d76e6 Mon Sep 17 00:00:00 2001 From: xue <2144439972@qq.com> Date: Tue, 13 Jan 2026 18:46:46 +0800 Subject: [PATCH] =?utf8?q?=E8=AE=BE=E5=A4=87=E5=93=84=E7=9D=A1=E5=85=88?= =?utf8?q?=E5=B1=8F=E8=94=BD=E5=88=87=E6=8D=A2=E8=A7=92=E8=89=B2=E4=B8=8E?= =?utf8?q?=E4=B8=8B=E8=BD=BD=E8=A1=A8=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../thunderbird/src/ThunderBirdModel.cpp | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) 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 3dbe0e4aa..009c0d195 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 @@ -2436,6 +2436,18 @@ extern "C" { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, " hasScreenImage: %d", hasScreenImage); WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, " screenImageAsEmoji: %d", screenImageAsEmoji); + // 检查是否在哄睡故事界面(THUNDERBIRD_LULLABYVIEW_4),如果是则禁止切换角色 + ThunderBirdMainView *mainView = ThunderBirdMainView::GetInstance(); + if (mainView != nullptr) { + int16_t currentView = mainView->GetCurrentView(); + int16_t currentSubView = mainView->GetCurrentSubView(); + if (currentView == THUNDERBIRD_LULLABYVIEW && + currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_4) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleCharacterConfigChange: 当前在哄睡故事界面,禁止切换角色"); + return; + } + } + // 将传入的参数转换为std::string(处理nullptr和字符串比较) std::string newEyesShape = eyesShape ? eyesShape : ""; std::string newEyesColor = eyesColor ? eyesColor : ""; @@ -3202,6 +3214,19 @@ extern "C" { { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleDownloadFile"); WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Download type: %d", type); + + // 检查是否在哄睡故事界面(THUNDERBIRD_LULLABYVIEW_4),如果是则禁止下载 + ThunderBirdMainView *mainView = ThunderBirdMainView::GetInstance(); + if (mainView != nullptr) { + int16_t currentView = mainView->GetCurrentView(); + int16_t currentSubView = mainView->GetCurrentSubView(); + if (currentView == THUNDERBIRD_LULLABYVIEW && + currentSubView == ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_4) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleDownloadFile: 当前在哄睡故事界面,禁止下载表情/屏保"); + return; + } + } + //跳转到OTA下载界 downloadFileType = type; if(ThunderBirdModel::GetOtaStatus() != 0) @@ -3210,7 +3235,6 @@ extern "C" { return; } // 保存当前蓝牙图标显示状态,以便从OTA视图返回时恢复 - ThunderBirdMainView *mainView = ThunderBirdMainView::GetInstance(); if (mainView != nullptr && mainView->earphoneIcon != nullptr) { m_savedBluetoothIconVisible = mainView->earphoneIcon->IsVisible(); WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::HandleDownloadFile: 保存当前蓝牙图标显示状态: %d", m_savedBluetoothIconVisible); -- 2.17.1