From: Caisking <3449750381@qq.com> Date: Wed, 24 Apr 2024 07:49:16 +0000 (+0800) Subject: 修复ble控制训练暂停和恢复 X-Git-Tag: release_V1.2.70_20241020_135402~1136 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=2c4f9ecceadf39f202165ba9dc8f15b4b37954c3;p=mirrors%2FFD230.git 修复ble控制训练暂停和恢复 --- 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 51e6df172..8c33cd21c 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 @@ -160,7 +160,7 @@ namespace OHOS default: break; } - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ControlSensor--%d!!", state); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ControlSensor[%d]!!", state); return true; } @@ -252,9 +252,9 @@ namespace OHOS { TraingModel::GetInstance()->SetSportState(ExerciseState::End); ControlSensor(ExerciseState::End); -#ifdef DATATEST +#if DATATEST NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGENDDATA); -#else +#endif if (TraingModel::GetInstance()->GetMomentum()) { NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGENDDATA); @@ -264,7 +264,6 @@ namespace OHOS // 训练量不足进入训练记录界面 NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING_RECORD); } -#endif } // 返回按键 if (strcmp(view.GetViewId(), BUTTONBACK) == 0) @@ -290,8 +289,13 @@ namespace OHOS WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Invalid sport command"); return false; } - uapi_set_screen_on_api(); // 亮屏检测 - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGCRAD); // 切换Slice + + uapi_set_screen_on_api(); // 亮屏检测 + if (TraingCardView::GetInstance() == nullptr) + { + NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGCRAD); // 切换Slice + } + // 增加打印 PRINT("cmd->sportType[%d],cmd->controlmd[%d],cmd->sportTagType[%d],cmd->sportTag[%d]\r\n", cmd->sportType, cmd->controlmd, cmd->sportTagType, cmd->sportTag); @@ -301,19 +305,20 @@ namespace OHOS case 0: OpenSensor(ExerciseClass::FREE_TRAINING); break; - // 室外骑行 + // 室外跑步 case 1: - OpenSensor(ExerciseClass::FREE_TRAINING); + OpenSensor(ExerciseClass::OUTDOOR); break; - // 室外跑步 + // 室外骑行 case 2: - OpenSensor(ExerciseClass::OUTDOOR); + OpenSensor(ExerciseClass::FREE_TRAINING); break; default: break; } ExerciseState cmdState = static_cast(cmd->controlmd); + PRINT("ExerciseState::End [%d]\r\n", cmdState); // 结束 if (cmdState == ExerciseState::End) @@ -333,35 +338,32 @@ namespace OHOS return true; } // 暂停和恢复 - if (cmdState == ExerciseState::Continue || cmdState == ExerciseState::Pause) + if (cmdState == ExerciseState::Pause) { PRINT("ExerciseState %d\r\n", cmdState); TraingModel::GetInstance()->SetSportState(cmdState); - if (TraingModel::GetInstance()->GetSportState() == ExerciseState::Continue) - { - TrainingControlView::GetInstance()->GetLabel()->SetText("ç»§ç»­"); - TrainingControlView::GetInstance()->GetButton()->SetImageSrc(SPORT_CONTINUE_IMAGE, SPORT_CONTINUE_IMAGE); - // 设置为暂停状态 - TraingModel::GetInstance()->SetSportState(ExerciseState::Pause); - // 暂停计时器 - PauseTimer(); - // 暂停运动库 - ControlSensor(ExerciseState::Pause); - return true; - } + TrainingControlView::GetInstance()->GetLabel()->SetText("ç»§ç»­"); + TrainingControlView::GetInstance()->GetButton()->SetImageSrc(SPORT_CONTINUE_IMAGE, SPORT_CONTINUE_IMAGE); + // 设置为暂停状态 + TraingModel::GetInstance()->SetSportState(ExerciseState::Pause); + // 暂停计时器 + PauseTimer(); + // 暂停运动库 + ControlSensor(ExerciseState::Pause); + return true; + } + if (cmdState == ExerciseState::Continue) + { // 暂停状态 - if (TraingModel::GetInstance()->GetSportState() == ExerciseState::Pause) - { - TrainingControlView::GetInstance()->GetLabel()->SetText("暂停"); - TrainingControlView::GetInstance()->GetButton()->SetImageSrc(SPORT_PAUSE_IMAGE, SPORT_PAUSE_IMAGE); - // 设置为继续状态 - TraingModel::GetInstance()->SetSportState(ExerciseState::Continue); - // 恢复计时器 - ResumeTimer(); - // 恢复运动库 - ControlSensor(ExerciseState::Continue); - return true; - } + TrainingControlView::GetInstance()->GetLabel()->SetText("暂停"); + TrainingControlView::GetInstance()->GetButton()->SetImageSrc(SPORT_PAUSE_IMAGE, SPORT_PAUSE_IMAGE); + // 设置为继续状态 + TraingModel::GetInstance()->SetSportState(ExerciseState::Continue); + // 恢复计时器 + ResumeTimer(); + // 恢复运动库 + ControlSensor(ExerciseState::Continue); + return true; } if (cmdState == ExerciseState::Start) {