From: Caisking <3449750381@qq.com> Date: Sun, 10 Nov 2024 06:43:11 +0000 (+0800) Subject: #1061 熄屏状态下目标达成没有弹出提醒框,需要点亮屏才弹出 X-Git-Tag: fd230_release_V1.3.102~97^2~1^2 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=refs%2Fchanges%2F1382%2Fhead;p=mirrors%2FFD230.git #1061 熄屏状态下目标达成没有弹出提醒框,需要点亮屏才弹出 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/include/TraingModel.h b/code/sdk/application/wearable/fd230app/nativeui/traing/include/TraingModel.h index 41d2f9d9e..1c1db830d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/include/TraingModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/include/TraingModel.h @@ -324,6 +324,7 @@ public: int GetGoaldegree(); /*获取训练目标完成百分比*/ std::string GetTagStr(); /*获取训练目标Str*/ void CheckSportTag(); + void CheckTimeTag(); /*配速表以及心率表配置*/ bool AddHeartRateData(uint32_t timestamp, uint8_t heartRate); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingModel.cpp index 84216804e..ac4997f04 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingModel.cpp @@ -997,6 +997,7 @@ void TraingModel::CheckSportTag() { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "sportdata->goaldegree %d", sportdata->goaldegree); if (sportdata->goaldegree >= 100 && !Gettagstuats) { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "目标完成"); uapi_set_screen_on_api(); // 亮屏检测 if (!OHOS::ConfigModel::GetInstance()->GetDnotdisturb()) { ui_api_vibrate_once_func(); // 震动提示 @@ -1014,6 +1015,9 @@ void TraingModel::CheckSportTag() { } } } +//运动时长目标 +void TraingModel::CheckTimeTag() {} + //获取运动时长 int TraingModel::GetDuration() { return sportdata->duration; } /*获取训练类型Id*/ @@ -1556,16 +1560,21 @@ extern "C" { /* 定时器回调函数 */ void TraingTimerCallback() { g_motionTimes++; + if (g_motionTimes != 0) { + sportdata->duration = g_motionTimes; + } // 检查并发送实时数据 OHOS::TraingModel::GetInstance()->SendLiveDataIfNecessary(); + // 更新目标完成度 + OHOS::TraingModel::GetInstance()->CheckSportTag(); #if 0 - TraingCardPresenter *gTraingCardPresenter = TraingCardPresenter::GetInstance(); - if (gTraingCardPresenter == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingTimerCallback::gTraingCardPresenter new fail"); - return; - } - gTraingCardPresenter->ModifiesTime(); + TraingCardPresenter *gTraingCardPresenter = TraingCardPresenter::GetInstance(); + if (gTraingCardPresenter == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingTimerCallback::gTraingCardPresenter new fail"); + return; + } + gTraingCardPresenter->ModifiesTime(); #endif WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "TraingTimerCallback\r\n"); } diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardPresenter.cpp index a96c238d9..b1f3d23ec 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardPresenter.cpp @@ -293,8 +293,8 @@ void TraingCardPresenter::UpdateDataView() { GraphicService::GetInstance()->PostGraphicEvent(std::bind( &TrainingDataView::UpdataTime, TrainingDataView::GetInstance())); - // 更新目标完成度 - TraingModel::GetInstance()->CheckSportTag(); + // // 更新目标完成度 + // TraingModel::GetInstance()->CheckSportTag(); // 刷新训练数据:心率、卡路里、距离、步数、训练强度、目标完成度 SportData *sportdata = TraingModel::GetInstance()->GetSportdata();