From 1e84bf4bc3debff1e4c59d2e2edf48d2f5bf837d Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E7=A8=8B=E7=BE=BD=E9=A3=9E?= <2393524978@qq.com> Date: Tue, 20 Aug 2024 10:06:09 +0000 Subject: [PATCH] Merge #740 into sdk602patch0626 from refs/changes/740/head MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 更新睡眠监测模式判别接口;优化睡眠监测模式下相关功能 * refs/changes/740/head: (1 commits squashed) - 更新睡眠监测模式判别接口;优化睡眠监测模式下相关功能 Signed-off-by: dingtalk_kaxuzp <2393524978@qq.com> Reviewed-by: snickersun@163.com Merged-by: snickersun@163.com CR-link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/740 --- .../nativeui/alarm/src/AlarmClockModel.cpp | 2 +- .../src/AlarmClockTimerConfig.cpp | 4 +-- .../nativeui/applist/src/ApplistPresenter.cpp | 2 +- .../src/DisplayBrightnessModel.cpp | 5 +++ .../src/DisplayBrightnessPresent.cpp | 2 +- .../src/DisplayBrightnessView.cpp | 14 +++++--- .../dnotdisturb/src/DnotDisturbModel.cpp | 7 ++++ .../nativeui/main/src/MainPresenterSample.cpp | 9 +++++ .../nativeui/sleep/include/SleepModel.h | 7 ---- .../nativeui/sleep/src/SleepModel.cpp | 34 +++++++++---------- .../service/ble_service/blemoder/bletest.cpp | 2 +- 11 files changed, 54 insertions(+), 34 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmClockModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmClockModel.cpp index f198658d2..6cf0c9e31 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmClockModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmClockModel.cpp @@ -692,7 +692,7 @@ void AlarmClockModel::PopInterCancelMusic() void AlarmClockModel::PopInterPlayMusic() { - if(true == ConfigModel::GetInstance()->GetDnotdisturb() && (0 == uapi_dev_runtime_get_sleep_status())) + if(true == ConfigModel::GetInstance()->GetDnotdisturb() && (0 == uapi_dev_runtime_get_sleep_monitoring_status())) { return; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarmclocktimerconfig/src/AlarmClockTimerConfig.cpp b/code/sdk/application/wearable/fd230app/nativeui/alarmclocktimerconfig/src/AlarmClockTimerConfig.cpp index cf51e5392..8eaf609a4 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarmclocktimerconfig/src/AlarmClockTimerConfig.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarmclocktimerconfig/src/AlarmClockTimerConfig.cpp @@ -393,8 +393,6 @@ extern "C" SendMsgToUIService(UI_UPDATE_SLEEP_DATA, 0, nullptr, 0); } - OHOS::SleepModel::GetInstance().ExitSleepModeAction(); - //判断是否还在睡眠 if (uapi_dev_runtime_get_sleep_status() == 0) { @@ -404,6 +402,8 @@ extern "C" OHOS::SleepModel::GetInstance().ReInitData(); // 更新睡眠数据 SendMsgToUIService(UI_UPDATE_SLEEP_DATA, 0, nullptr, 0); do_cywee_service_check_msg(CYWEE_SERVICE_CMD_NAP_SEDENTARY_MODE, NULL);//算法底层切换小睡监测模式 + + OHOS::SleepModel::GetInstance().ExitSleepModeAction(); } } // 进入睡眠检测模式并退出小睡检测模式 diff --git a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp index af0d8f534..89278f439 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp @@ -174,7 +174,7 @@ namespace OHOS HealthService::GetInstance()->SetHealthCurrent(highHealthState); viewId = VIEW_CHECK_INVALID; } - if(true == uapi_dev_runtime_get_sleep_status()) + if(uapi_dev_runtime_get_sleep_monitoring_status()) { if(VIEW_DNOTDISTURB == viewId) return false; diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp index bb13251c3..e8c8be662 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp @@ -11,6 +11,7 @@ #include "wearable_log.h" #include "ConfigModel.h" #include "ConfigModelC.h" +#include "../../../../../../../drivers/peripheral/utils/custom_runtime.h" namespace OHOS { @@ -35,6 +36,10 @@ namespace OHOS return false; } bool t_value = mmi_flip_wrist_switch_get(); + if(uapi_dev_runtime_get_sleep_monitoring_status()) + { + t_value = false; + } displayBrightnessPresent->SetRaiseToBrightnessState(t_value); return true; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp index 5883ef9e5..4ab35f458 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp @@ -170,7 +170,7 @@ namespace OHOS } if (strcmp(view.GetViewId(), BRINGHTNESSCONTROLBUTTON_VIEW) == 0) { - if(true == uapi_dev_runtime_get_sleep_status()) + if(uapi_dev_runtime_get_sleep_monitoring_status()) { return false; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp index 619fce2b8..dd1b552cd 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp @@ -351,10 +351,6 @@ namespace OHOS return false; } RaiseToBrightnessCheckBoxButton->SetOnChangeListener(presenter_); - if(true == uapi_dev_runtime_get_sleep_status()) - { - RaiseToBrightnessCheckBoxButton->SetTouchable(false); - } return true; } @@ -405,6 +401,16 @@ namespace OHOS DisplayBrightnessScrollView[DISPLAYBRIGHTNESSVIEW]->Add(RaiseToBrightnessImage); DisplayBrightnessScrollView[DISPLAYBRIGHTNESSVIEW]->Add(RaiseToBrightnessLabel); DisplayBrightnessScrollView[DISPLAYBRIGHTNESSVIEW]->Add(RaiseToBrightnessCheckBoxButton); + + if(uapi_dev_runtime_get_sleep_monitoring_status()) + { + RaiseToBrightnessCheckBoxButton->SetTouchable(false); + } + else + { + RaiseToBrightnessCheckBoxButton->SetTouchable(true); + } + RootView::GetInstance()->Add(DisplayBrightnessScrollView[DISPLAYBRIGHTNESSVIEW]); Draw(); } diff --git a/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp index 38e8a3820..c2a7ad046 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp @@ -15,6 +15,8 @@ #include "main/include/MainViewSample.h" #include "MainModel.h" #include "ConfigModel.h" +#include "../../../../../../../drivers/peripheral/utils/custom_runtime.h" + namespace OHOS { @@ -37,6 +39,11 @@ namespace OHOS bool DnotDisturbModel::GetDoNotDisturbModeEnabled() const { + if(uapi_dev_runtime_get_sleep_monitoring_status()) + { + return true; + } + return ConfigModel::GetInstance()->GetDnotdisturb(); } diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp index d6290dded..e102461af 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp @@ -32,6 +32,7 @@ #include "weather/include/WeatherModel.h" #include "heart_blood/health_service/health_service.h" #include "MainModel.h" +#include "../../../../../../../drivers/peripheral/utils/custom_runtime.h" #if USE_OFFLINE_DIAL #include "DialViewGroup.h" @@ -123,6 +124,14 @@ namespace OHOS WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "health model nullptr"); return false; } + if(uapi_dev_runtime_get_sleep_monitoring_status()) + { + if(VIEW_DNOTDISTURB == g_jumpView[curViewId]) + { + return true; + } + } + if (curViewId == DROPDOWN_CLICK_DONOTDISTURB) { #if 0 diff --git a/code/sdk/application/wearable/fd230app/nativeui/sleep/include/SleepModel.h b/code/sdk/application/wearable/fd230app/nativeui/sleep/include/SleepModel.h index d8a32e928..44554c4b5 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/sleep/include/SleepModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/sleep/include/SleepModel.h @@ -141,13 +141,6 @@ namespace OHOS int goal_total_time = 0; SLEEPSTATE sleepstate_ = SLEEPSTATE::WAKE; - - typedef struct - { - bool DnotdisturbFlag; - bool FlipWristFlag; - }DeviceStateBeforeSleep; - DeviceStateBeforeSleep DeviceStateBeforeSleep_ = {0}; }; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepModel.cpp index 3cdc90268..c8d9912d5 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/sleep/src/SleepModel.cpp @@ -42,6 +42,7 @@ #include "ui_service.h" #include "ConfigModelC.h" #include "power_display_service.h" +#include "MainModel.h" extern "C" errcode_t uapi_get_TIME_STR(uint32_t time, char *p_time, char date_separator, char time_separator, date_format_t format); extern "C" int get_sleep_time_from_config_model(void); @@ -751,17 +752,15 @@ namespace OHOS void SleepModel::EnterSleepModeAction(void) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[%d]:EnterSleepModeAction]", __LINE__); - // switch on - // mmi_sleep_mode_flag_set(true); - // switch on donotdisturb - DeviceStateBeforeSleep_.DnotdisturbFlag = OHOS::ConfigModel::GetInstance()->GetDnotdisturb(); - OHOS::ConfigModel::GetInstance()->SetDnotdisturb(true); // 开启勿扰 + // update donotdisturb SendMsgToUIService(UI_UPDATE_DNOTDISTURB_MODE, 0, nullptr, 0); - // switch off flip wrist - DeviceStateBeforeSleep_.FlipWristFlag = mmi_flip_wrist_switch_get(); - mmi_flip_wrist_switch_set(false); // switch off + /*更新主界面配置*/ + MainModel::GetInstance().setDialState(DialState::SLEEP, true); + + // disable flip wrist + uapi_take_to_wake(0); // turn down brightness const power_display_svr_api_t *display_api = power_display_svr_get_api(); @@ -770,18 +769,19 @@ namespace OHOS void SleepModel::ExitSleepModeAction(void) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[%d]:ExitSleepModeAction]", __LINE__); - // switch off - // mmi_sleep_mode_flag_set(false); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[%d]:ExitSleepModeAction", __LINE__); - // reset donotdisturb - bool DnotdisturbFlag = DeviceStateBeforeSleep_.DnotdisturbFlag; - OHOS::ConfigModel::GetInstance()->SetDnotdisturb(DnotdisturbFlag); + // update donotdisturb SendMsgToUIService(UI_UPDATE_DNOTDISTURB_MODE, 0, nullptr, 0); - // reset flip wrist - bool FlipWristFlag = DeviceStateBeforeSleep_.FlipWristFlag; - mmi_flip_wrist_switch_set(FlipWristFlag); + /*更新主界面配置*/ + MainModel::GetInstance().setDialState(DialState::SLEEP, false); + + // enable flip wrist + if(true == mmi_flip_wrist_switch_get()) + { + uapi_take_to_wake(1); + } // reset brightness const power_display_svr_api_t *display_api = power_display_svr_get_api(); diff --git a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp index de63b5cde..1f6459fb2 100644 --- a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp +++ b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp @@ -1796,7 +1796,7 @@ int get_ScreenDuration(void) //获取亮屏时长 } void Set_RaiseToWake(bool value) //抬婉亮屏开关 { - if(true == uapi_dev_runtime_get_sleep_status()) + if(uapi_dev_runtime_get_sleep_monitoring_status()) { return; } -- 2.17.1