{VIEW_COMPASS, PNG_APPLIST_COMPASS_IMAGE, PNG_APPLIST_COMPASS_IMAGE, "指南针", nullptr},
{VIEW_INDOORWALK, PNG_APPLIST_WALK_IMAGE, PNG_APPLIST_WALK_IMAGE, "室内步行", nullptr},
{VIEW_WEATHER, PNG_APPLIST_WEATHER_IMAGE, PNG_APPLIST_WEATHER_IMAGE, "天气", nullptr},
- // {VIEW_HEART, PNG_APPLIST_HEART_IMAGE, PNG_APPLIST_HEART_IMAGE, "心率检测", nullptr},
+ {VIEW_HEART, PNG_APPLIST_HEART_IMAGE, PNG_APPLIST_HEART_IMAGE, "心率检测", nullptr},
{VIEW_RECORD, PNG_APPLIST_RECORD_IMAGE, PNG_APPLIST_RECORD_IMAGE, "录音", nullptr},
{VIEW_SETTING, PNG_APPLIST_SETTING_IMAGE, PNG_APPLIST_SETTING_IMAGE, "设置", nullptr},
{VIEW_DIALUPDATE, PNG_APPLIST_UI_SAMPLE_IMAGE, PNG_APPLIST_UI_SAMPLE_IMAGE, "表盘切换", nullptr},
valid_counter_ = 0;\r
wear_counter_ = 0;\r
SetCheckStatus(false);\r
+ SetWearStatus(true);\r
}\r
\r
void HeartModel::SetWearStatus(uint8_t wear)\r
// 设置佩戴状态\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Weartest::%d", wear);\r
wear_ = wear_;\r
-\r
- // 佩戴信息为错误\r
if (wear_ != 1)\r
{\r
- // 佩戴错误计时器计数\r
- wear_counter_++;\r
- // 计数达到10次,停止检测\r
- if (wear_counter_ >= 10)\r
- {\r
- wearStatus = false;\r
- }\r
+ wear_counter_++; // 佩戴错误计时器计数\r
+ }\r
+ if (wear_counter_ >= 10)\r
+ {\r
+ wearStatus = false; // 计数达到10次,停止检测\r
+ }\r
+ else\r
+ {\r
+ wearStatus = true;\r
}\r
- wearStatus = true;\r
}\r
\r
bool HeartModel::GetWearStatus()\r
{\r
// 结束本次测试,将最后一次有效数作为本次测量结果\r
Heart_Stop();\r
- HeartRateData *data;\r
+ /* -------------------------------------------------------------------------- */\r
+ HeartRateData *data = new HeartRateData;\r
data->Heart = heart;\r
data->timestamp = HeartPresenter::GetInstance()->GetCurrentTime();\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%d %lld", heart, data->timestamp);\r
SetCheckTime(data->timestamp);\r
HeartService::GetInstance()->UpdateHeartRateData(*data);\r
+ /* -------------------------------------------------------------------------- */\r
}\r
}\r
\r
}
return false;
}
+ // 增加按键事件
+ bool HeartPresenter::OnKeyAct(UIView &view, const KeyEvent &event)
+ {
+#if HEARTKEYABLE
+ WEARABLE_LOGD("", "into the view is: %s\n", typeid(view).name());
+ uint16 keyID = event.GetKeyId();
+ WEARABLE_LOGD("", "into key! keyID %u\n", keyID);
+ // 如果是power键就返回上一级
+ if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER))
+ {
+ // uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId();
+ NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
+ }
+#endif
+ return true;
+ }
bool HeartPresenter::OnClick(UIView &view, const ClickEvent &event)
{
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HEARTCHECKVIEW->HEARTVIEW");
HeartView::GetInstance()->ChangeView(HEARTCHECKVIEW, HEARTVIEW);
+ HeartView::GetInstance()->UpHeartText(); // 更新主界面数据
HeartModel::GetInstance()->SetHeartCheckViewStatus(false);
HeartModel::GetInstance()->Heart_Stop();
}
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HEARTRESULT->HEARTCHECKVIEW");
HeartView::GetInstance()->ChangeView(HEARTRESULT, HEARTCHECKVIEW);
+ HeartModel::GetInstance()->SetHeartResultViewStatus(false);
+ HeartModel::GetInstance()->SetHeartCheckViewStatus(true);
HeartCheckView::GetInstance()->GetImageAnimator()->Start(); // 播放检测界面动画
HeartModel::GetInstance()->Heart_Start(); // 开始检测
return true;
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HEARTRESULT->HEARTVIEW");
HeartView::GetInstance()->ChangeView(HEARTRESULT, HEARTVIEW);
+ HeartModel::GetInstance()->SetHeartResultViewStatus(false);
+ HeartView::GetInstance()->UpHeartText(); // 更新主界面数据
HeartModel::GetInstance()->Heart_Stop();
return true;
}
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HeartPresenter::OnClick");
return false;
}
-
- // 增加按键事件
- bool HeartPresenter::OnKeyAct(UIView &view, const KeyEvent &event)
- {
-#if HEARTKEYABLE
- WEARABLE_LOGD("", "into the view is: %s\n", typeid(view).name());
- uint16 keyID = event.GetKeyId();
- WEARABLE_LOGD("", "into key! keyID %u\n", keyID);
- // 如果是power键就返回上一级
- if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER))
- {
- // uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId();
- NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST);
- }
-#endif
- return true;
- }
void HeartPresenter::ProgressNotify(void)
{
// 当检测状态为开始检测,开始检测
HeartCheckView::GetInstance()->UpShowHeartText(); // 更新检测界面
if (startheart == true)
{
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "GetCheckStatus : true");
uint8_t md = PPG_SERVICE_CMD_TYPE_DO_PPG_TEST;
send_ppg_cmd_msg(md);
startheart = false;
// 当检测状态为结束检测,结束检测
if (HeartModel::GetInstance()->GetCheckStatus() == false)
{
- if (HeartCheckView::GetInstance()->GetImageAnimator()->GetState() == true)
- {
- HeartCheckView::GetInstance()->GetImageAnimator()->Stop();
- }
if (startheart == false)
{
+ HeartCheckView::GetInstance()->GetImageAnimator()->Stop();
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "GetCheckStatus : false");
uint8_t md = PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST;
send_ppg_cmd_msg(md);
startheart = true;
}
}
-
// 监测佩戴状态
if (HeartModel::GetInstance()->GetWearStatus() == false)
{
- HeartModel::GetInstance()->Heart_Stop();
- if (HeartCheckView::GetInstance()->GetImageAnimator()->GetState() == true)
+ if (HeartModel::GetInstance()->GetHeartCheckViewStatus() == true)
{
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "GetWearStatus : false");
HeartCheckView::GetInstance()->GetImageAnimator()->Stop();
+ // 跳转到异常检测界面
+ HeartView::GetInstance()->ChangeView(HEARTCHECKVIEW, HEARTRESULT);
+ HeartModel::GetInstance()->SetHeartCheckViewStatus(false);
+ HeartModel::GetInstance()->SetHeartResultViewStatus(true);
+ HeartModel::GetInstance()->Heart_Stop();
}
}
}
{
HeartView::GetInstance()->ChangeView(HEARTBANDVIEW, HEARTCHECKVIEW);
HeartModel::GetInstance()->SetHeartBandoffViewStatus(false);
- // 设置检测界面状态
+ // 检测界面状态
HeartModel::GetInstance()->SetHeartCheckViewStatus(true);
- // 播放检测界面动画
HeartCheckView::GetInstance()->GetImageAnimator()->Start();
HeartModel::GetInstance()->Heart_Start(); // 开始检测
}
// 测试失败
if (HeartModel::GetInstance()->GetShowHeartdata() == 0)
{
-
HeartView::GetInstance()->ChangeView(HEARTCHECKVIEW, HEARTRESULT);
HeartModel::GetInstance()->SetHeartResultViewStatus(true);
}