修改骑行不进行配速的计算 3221/1
authorCaisking <Casiking@zhihuishixun.com>
Thu, 26 Feb 2026 11:57:51 +0000 (19:57 +0800)
committerCaisking <Casiking@zhihuishixun.com>
Thu, 26 Feb 2026 11:57:51 +0000 (19:57 +0800)
code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/src/TraingModel.cpp

index 2068f7b..296f7eb 100644 (file)
@@ -1423,19 +1423,31 @@ void TraingModel::SetSportdata(SportData *data) {
  bool TraingModel::SaveSportData() {
 
    // 骑行等需要GPS的运动:CYWEE无距离时,在结束时用GPS轨迹一次性计算,不实时计
-   if (sportdata->distance == 0 && IsNeedGPS(sportId_) && gpsData.size() >= 2) {
-     uint32_t gpsDist = CalculateDistanceFromGPSTrack();
-     if (gpsDist > 0) {
-       sportdata->distance = gpsDist;
-       if (sportdata->duration > 0) {
-         sportdata->apc = (sportdata->duration * 1000) / sportdata->distance;
-         if (sportdata->fpc <= 0) sportdata->fpc = sportdata->apc;
-         if (sportdata->spc <= 0) sportdata->spc = sportdata->apc;
-       }
-       WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,
-                     "结束时用GPS轨迹计算距离: %u米, 平均配速=%d", gpsDist, sportdata->apc);
-     }
-   }
+   if (sportdata->distance == 0 && IsNeedGPS(sportId_) && gpsData.size() >= 2) 
+   {
+      uint32_t gpsDist = CalculateDistanceFromGPSTrack();
+      if (gpsDist > 0) 
+      {
+        sportdata->distance = gpsDist;
+        if (sportdata->duration > 0) 
+        {
+          //骑行由app计算配速
+          if(sportdata->sportId == UIResourceTextId::STR_EXERCISE_OUTDOORBIKING)
+          {
+            sportdata->apc = 0;
+            sportdata->fpc = 0;
+            sportdata->spc = 0;
+          }else
+          {
+            sportdata->apc = (sportdata->duration * 1000) / sportdata->distance;
+            if (sportdata->fpc <= 0) sportdata->fpc = sportdata->apc;
+            if (sportdata->spc <= 0) sportdata->spc = sportdata->apc;
+          }
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,
+                      "结束时用GPS轨迹计算距离: %u米, 平均配速=%d", gpsDist, sportdata->apc);
+      }
+      }
+    }
 
    // 配置训练存储状态
    uapi_dev_runtime_set_train_storage_status(1);
@@ -1676,7 +1688,7 @@ bool TraingModel::GetMomentum() {
  bool TraingModel::SaveHeartTable() {
  
    //打印数组
-   PrintHeartRateTable();
+  //  PrintHeartRateTable();
  
    CreateDirectoryIfNotExists(TRAINING_HEART_FILE);
  
@@ -1715,7 +1727,7 @@ bool TraingModel::GetMomentum() {
  bool TraingModel::SavePaceTable() {
  
    //打印数组
-   PrintPaceTable();
+  // PrintPaceTable();
  
    CreateDirectoryIfNotExists(TRAINING_PACE_FILE);