From: xue <2144439972@qq.com> Date: Mon, 29 Sep 2025 09:24:08 +0000 (+0800) Subject: 增加OTAslice,哄睡界面,提醒界面退出时返回原任务 X-Git-Tag: V1.0.9_20251128_194606_LN~250^2~25^2~2^2~4 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=3582f404efe50772c95890b79dc3ded75c95ab7e;p=mirrors%2FFD230.git 增加OTAslice,哄睡界面,提醒界面退出时返回原任务 --- diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/include/ThunderBirdModel.h b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/include/ThunderBirdModel.h index 61c42a4a8..3022283ed 100644 --- a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/include/ThunderBirdModel.h +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/include/ThunderBirdModel.h @@ -147,6 +147,13 @@ namespace OHOS bool IsNetworkStatusChanged() const; void SetNetworkStatusChanged(bool changed); + int16_t GetCurrentView() const; + int16_t GetCurrentSubView() const; + + void SetCurrentView(int16_t view); + void SetCurrentSubView(int16_t subView); + void SetViewModel(); + // 对话状态相关函数 int GetConversationStatus(); @@ -248,6 +255,8 @@ namespace OHOS bool is_all_services_ready = false; bool init_falg = false; bool bind_status = false; + int16_t currentView_model = -1; + int16_t currentSubView_model = -1; }; } diff --git a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdMainView.cpp b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdMainView.cpp index 25f3f4850..ab7c1b8b8 100644 --- a/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdMainView.cpp +++ b/code/sdk/application/wearable/ln/nativeapp/nativeui/thunderbird/src/ThunderBirdMainView.cpp @@ -290,6 +290,15 @@ namespace OHOS // 默认显示主界面 //ChangeView(MAXVIEW, THUNDERBIRD_GUIDEVIEW, 0); // 文字显示图层 + if(ThunderBirdModel::GetInstance()->GetCurrentView() != -1 && ThunderBirdModel::GetInstance()->GetCurrentSubView() != -1) + { + ChangeView(MAXVIEW, ThunderBirdModel::GetInstance()->GetCurrentView(), ThunderBirdModel::GetInstance()->GetCurrentSubView()); + //清空状态 + ThunderBirdModel::GetInstance()->SetCurrentView(-1); + ThunderBirdModel::GetInstance()->SetCurrentSubView(-1); + } + else + { if(ThunderBirdModel::GetInstance()->StartBootOperation() == 0) { ChangeView(MAXVIEW, THUNDERBIRD_GUIDEVIEW, ThunderBirdGuideView::THUNDERBIRD_GUIDEVIEW_1); // 文字显示图层 @@ -299,6 +308,7 @@ namespace OHOS ChangeView(MAXVIEW, THUNDERBIRD_DIALOGUEVIEW, ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_STATUS_SHOW); //ChangeView(MAXVIEW, THUNDERBIRD_LULLABYVIEW, ThunderBirdLullabyView::THUNDERBIRD_LULLABYVIEW_4); } + } ScrollView_->Add(InitBaseData()); // 最上面状态栏 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 d52343941..e49d60ad3 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 @@ -242,7 +242,37 @@ return m_countUpValue; } + //传入OTA的界面状态,以返回原任务 + int16_t ThunderBirdModel::GetCurrentView() const + { + //return ThunderBirdMainView::GetInstance()->GetCurrentView(); + return currentView_model; + } + + int16_t ThunderBirdModel::GetCurrentSubView() const + { + return currentSubView_model; + } + + void ThunderBirdModel::SetCurrentView(int16_t view) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::SetCurrentView: view=%d", view); + currentView_model = view; + } + + void ThunderBirdModel::SetCurrentSubView(int16_t subView) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::SetCurrentSubView: subView=%d", subView); + currentSubView_model = subView; + } + //传入状态赋值 + void ThunderBirdModel::SetViewModel() + { + currentView_model = ThunderBirdMainView::GetInstance()->GetCurrentView(); + currentSubView_model = ThunderBirdMainView::GetInstance()->GetCurrentSubView(); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SetViewModel: currentView_model=%d, currentSubView_model=%d", currentView_model, currentSubView_model); + } /*************************OTA升级*************************/ @@ -250,27 +280,12 @@ { do_ln_http_server_send_data(LN_HTTP_SERVICE_CMD_OTA_GET_TASK, nullptr, 0);//获取是否需要OTA升级 - // if(uapi_ln_ota_get_update_type() == 1)//强制OTA升级 - // { - // NativeAbility::GetInstance().ChangeSlice(VIEW_OTA); - // return 1; - // } - // else if(uapi_ln_ota_get_update_type() == 0)//可选OTA升级 - // { - // NativeAbility::GetInstance().ChangeSlice(VIEW_OTA); - // return 0; - // } return -1; } /*************************OTA升级进度*************************/ void ThunderBirdModel::UpdateOtaProgress(int progress) { - // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ThunderBirdModel::UpdateOtaProgress: %d", progress); - // if(ThunderBirdOtaView::GetInstance()) - // { - // ThunderBirdOtaView::GetInstance()->SetRemindProgress(progress); - // } } /*************************OTA升级状态*************************/ @@ -281,6 +296,7 @@ // 更新状态检查 if(status == 1 || status == 2 || status == 3)//OTA升级 { + SetViewModel(); NativeAbility::GetInstance().ChangeSlice(VIEW_OTA); WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "进入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 33a8a59fb..017bdf802 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 @@ -536,8 +536,10 @@ namespace OHOS if(keyType == KEY_TYPE_VENDOR_UP) { switch (currentSubView) { + //通知界面-关闭通知 case ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_TASK_REMINDER://事项提醒界面-关闭通知 - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_DIALOGUEVIEW, ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_STATUS_SHOW); + //回原界面 + ThunderBirdMainView::GetInstance()->GoBackToPreviousView(); break; case ThunderBirdReminderView::THUNDERBIRD_REMINDERVIEW_DIALOGUE_NOT_ENOUGH://提醒界面-对话不足 ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_DIALOGUEVIEW, ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_STATUS_SHOW); @@ -569,14 +571,19 @@ namespace OHOS ThunderBirdModel::GetInstance()->ota_update_boot();//绑定成功后获取ota升级任务 ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_DIALOGUEVIEW, ThunderBirdDialogueView::THUNDERBIRD_DIALOGUEVIEW_STATUS_SHOW); break; - case ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_WARNING: - ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_ADJUSTVIEW, ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_NETWORK_CONNECTING); - break; case ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_NETWORK_CONNECTING: ThunderBirdMainView::GetInstance()->ChangeView(currentView, THUNDERBIRD_SHUTDOWNVIEW, 0); break; } } + else if(keyType == KEY_TYPE_VENDOR_DOWN) + { + switch (currentSubView) { + case ThunderBirdAdjustView::THUNDERBIRD_ADJUSTVIEW_WARNING://退出返回原任务 + ThunderBirdMainView::GetInstance()->GoBackToPreviousView(); + break; + } + } return true; }