//更新gps点位
GetPointData();
+ //存储运动数据
do_custom_fileoperate_service_check_msg(
CUSTOM_FILEOPERATE_MSG_TYPE_SPORTDATA_SAVE, nullptr, 0);
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SaveSportData error!");
}
#else
+ //运动数据达标,存储运动数据
if (MomentumFlag) {
// GetGoaldegree(); // 设置目标完成度
if (SaveSportData()) {
bool TraingModel::GetSportOpenState() { return Openstate; }
/*获取运动时长*/
uint32_t TraingModel::GetSportTime() { return sportdata->duration; }
- /*获取训练量是否达标*/
- bool TraingModel::GetMomentum() {
- #if 0
- int caldata = TraingModel::GetInstance()->GetCal();
- /*判断是否产生至少1Kcald的运动量*/
- if (caldata >= 1)
- {
- MomentumFlag = true;
- }
- else
- {
- MomentumFlag = false;
- }
- #endif
- int duration = sportdata->duration;
- //判断运动时间是否大于1分钟
- if (duration >= 60) {
- MomentumFlag = true;
- } else {
- MomentumFlag = false;
- }
- return MomentumFlag;
- }
+/*获取训练量是否达标*/
+bool TraingModel::GetMomentum() {
+#if 0
+ int caldata = TraingModel::GetInstance()->GetCal();
+ /*判断是否产生至少1Kcald的运动量*/
+ if (caldata >= 1)
+ {
+ MomentumFlag = true;
+ }
+ else
+ {
+ MomentumFlag = false;
+ }
+#endif
+ int duration = sportdata->duration;
+ //判断运动时间是否大于1分钟
+ if (duration >= 60) {
+ MomentumFlag = true;
+ } else {
+ MomentumFlag = false;
+ }
+
+ // 如果是需要GPS定位的运动,需要判断移动距离是否大于100m,不然轨迹可能异常
+ if (IsNeedGPS(sportdata->sportId)) {
+ if (sportdata->distance < 100) {
+ MomentumFlag = false;
+ }
+ }
+
+ return MomentumFlag;
+}
//用户运动数据配置
void TraingModel::SetUserSportdata() {