void ResumeTimer();\r
}\r
#include "NativeRegisterManager.h"\r
-namespace OHOS\r
-{\r
\r
- REGIST_SLICE(VIEW_TRAININGCRAD, TraingCardView, TraingCardPresenter);\r
+#ifdef SUPPORT_CYWEE_SERVICE\r
+#include "cywee_service.h"\r
+#endif\r
+namespace OHOS {\r
+\r
+REGIST_SLICE(VIEW_TRAININGCRAD, TraingCardView, TraingCardPresenter);\r
\r
// 当前Presenter属性实例化的内存指针\r
static TraingCardPresenter *g_pTraingCardPresenter = nullptr;\r
"TraingModel::GetInstance()->DisplayMotionDuration() nullptr");\r
return;\r
}\r
- if (TrainingControlView::GetInstance()->GetTimeLabel() != nullptr) {\r
- TrainingControlView::GetInstance()->GetTimeLabel()->SetText(\r
- TimeStr.c_str());\r
- }\r
- if (TrainingDataView::GetInstance()->GetTimeLabel() != nullptr) {\r
- TrainingDataView::GetInstance()->GetTimeLabel()->SetText(TimeStr.c_str());\r
+ if (TrainingControlView::GetInstance() != nullptr &&\r
+ TrainingDataView::GetInstance() != nullptr) {\r
+ if (TrainingControlView::GetInstance()->GetTimeLabel() != nullptr) {\r
+ TrainingControlView::GetInstance()->GetTimeLabel()->SetText(\r
+ TimeStr.c_str());\r
+ }\r
+ if (TrainingDataView::GetInstance()->GetTimeLabel() != nullptr) {\r
+ TrainingDataView::GetInstance()->GetTimeLabel()->SetText(TimeStr.c_str());\r
+ } \r
}\r
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ModifiesTime end");\r
}\r
"TraingModel::GetInstance()->DisplayMotionDuration() nullptr");\r
return;\r
}\r
- if (TrainingControlView::GetInstance()->GetTimeLabel() != nullptr) {\r
- TrainingControlView::GetInstance()->GetTimeLabel()->SetText(\r
- TimeStr.c_str());\r
+ if (TrainingControlView::GetInstance() != nullptr) {\r
+ if (TrainingControlView::GetInstance()->GetTimeLabel() != nullptr) {\r
+ TrainingControlView::GetInstance()->GetTimeLabel()->SetText(\r
+ TimeStr.c_str());\r
+ }\r
}\r
}\r
void TraingCardPresenter::UpdateTimeOfData() {\r
"TraingModel::GetInstance()->DisplayMotionDuration() nullptr");\r
return;\r
}\r
- if (TrainingDataView::GetInstance()->GetTimeLabel() != nullptr) {\r
- TrainingDataView::GetInstance()->GetTimeLabel()->SetText(TimeStr.c_str());\r
+ if (TrainingDataView::GetInstance() != nullptr) {\r
+ if (TrainingDataView::GetInstance()->GetTimeLabel() != nullptr) {\r
+ TrainingDataView::GetInstance()->GetTimeLabel()->SetText(TimeStr.c_str());\r
+ }\r
}\r
}\r
\r
* -------------------------------- */\r
/*开启cywee*/\r
bool TraingCardPresenter::OpenSensor(ExerciseClass type) {\r
- // // 防止重复开启\r
- // if (opensensorstuats) {\r
- // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "OpenSensor is opening!!");\r
- // return false;\r
- // }\r
- // // 根据不同的运动项目进行不同的运动\r
- // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "TraingCardPresenter::OpenSensor!!");\r
- // switch (type) {\r
- // case ExerciseClass::NORMAL:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_NORMAL_MODE, NULL);\r
- // break;\r
- // case ExerciseClass::TREADMILL:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_TREADMILL_MODE, NULL);\r
- // break;\r
- // case ExerciseClass::OUTDOOR:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_OUTDOOR_RUNNING_MODE, NULL);\r
- // break;\r
- // case ExerciseClass::INDOOR:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_INDOOR_RUNNING_MODE, NULL);\r
- // break;\r
- // case ExerciseClass::FITNESS_PEDOMETER:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_FITNESS_PEDOMETER_MODE, NULL);\r
- // break;\r
- // case ExerciseClass::FREE_TRAINING:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_FREE_TRAINING_MODE, NULL);\r
- // break;\r
- // default:\r
- // break;\r
- // }\r
- // opensensorstuats = true;\r
- // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "OpenSensor--%d!!", type);\r
+ // 防止重复开启\r
+ if (opensensorstuats) {\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "OpenSensor is opening!!");\r
+ return false;\r
+ }\r
+ // 根据不同的运动项目进行不同的运动\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingCardPresenter::OpenSensor!!");\r
+#ifdef SUPPORT_PPG_SERVICE\r
+ switch (type) {\r
+ case ExerciseClass::NORMAL:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_NORMAL_MODE, NULL);\r
+ break;\r
+ case ExerciseClass::TREADMILL:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_TREADMILL_MODE, NULL);\r
+ break;\r
+ case ExerciseClass::OUTDOOR:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_OUTDOOR_RUNNING_MODE, NULL);\r
+ break;\r
+ case ExerciseClass::INDOOR:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_INDOOR_RUNNING_MODE, NULL);\r
+ break;\r
+ case ExerciseClass::FITNESS_PEDOMETER:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_FITNESS_PEDOMETER_MODE, NULL);\r
+ break;\r
+ case ExerciseClass::FREE_TRAINING:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_FREE_TRAINING_MODE, NULL);\r
+ break;\r
+ default:\r
+ break;\r
+ }\r
+#endif\r
+ opensensorstuats = true;\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "OpenSensor--%d!!", type);\r
return true;\r
}\r
\r
/*控制cywee*/\r
bool TraingCardPresenter::ControlSensor(ExerciseState state) {\r
+#ifdef SUPPORT_PPG_SERVICE\r
switch (state) {\r
- // case ExerciseState::End:\r
- // // 退出进入普通模式\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_NORMAL_MODE, NULL);\r
- // opensensorstuats = false; // 恢复标志位\r
- // StopAndResetTimer(); // 关闭计时器\r
- // break;\r
- // case ExerciseState::Pause:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_PAUSE, 0);\r
- // break;\r
- // case ExerciseState::Continue:\r
- // do_cywee_service_check_msg(CYWEE_SERVICE_CMD_RESUME, 0);\r
- // break;\r
+ case ExerciseState::End:\r
+ // 退出进入普通模式\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_NORMAL_MODE, NULL);\r
+ opensensorstuats = false; // 恢复标志位\r
+ StopAndResetTimer(); // 关闭计时器\r
+ break;\r
+ case ExerciseState::Pause:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_PAUSE, 0);\r
+ break;\r
+ case ExerciseState::Continue:\r
+ do_cywee_service_check_msg(CYWEE_SERVICE_CMD_RESUME, 0);\r
+ break;\r
default:\r
break;\r
}\r
+#endif\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ControlSensor[%d]!!", state);\r
return true;\r
}\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "sportdata is null");\r
return;\r
}\r
+\r
+ if (TrainingDetailView::GetInstance() == nullptr ||\r
+ TrainingDataView::GetInstance() == nullptr)\r
+ return;\r
+\r
std::string distanceStr;\r
if (sportdata->distance != 0) {\r
double distance_km =\r
#if 1\r
void TraingCardPresenter::Notify(void) {\r
// 如果未开启训练,直接退出\r
- if (TraingModel::GetInstance()->GetSportState() == ExerciseState::General) {\r
+ if (TraingModel::GetInstance()->GetSportState() == ExerciseState::General || view_ == nullptr) {\r
return;\r
}\r
\r
/* -------------------------------- 协议发起运动处理\r
* -------------------------------- */\r
\r
- #ifdef BLE_SERVER_ENABLE\r
+#ifdef BLE_SERVER_ENABLE\r
bool TraingCardPresenter::send_sport_cmd(training_ble *cmd) {\r
if (cmd == nullptr) {\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "无效的运动命令 cmd 为空!");\r
}\r
#endif\r
\r
-\r
/*训练结束*/\r
void TraingCardPresenter::handleEndState() {\r
TraingModel::GetInstance()->SetSportState(ExerciseState::End);\r