From b7bdea78b02bc9bde87fb540c2d04a0e76a1dd18 Mon Sep 17 00:00:00 2001 From: Thomas Kuehne Date: Sun, 26 Apr 2026 07:55:28 +0000 Subject: [PATCH] Garmin: fix .FIT file decoding for STRAVA generated files example files for testing: https://github.com/ThomasKuehne/FIT-test-files/tree/main/Activity/2020/Activity_20201211_002_Cycling_Strava_f0e4ebdad26738b169400fb35fb4b31e.fit https://github.com/ThomasKuehne/FIT-test-files/tree/main/Activity/2022/Activity_20221014_002_Cycling_Strava_456175fbfb40fb170c3aff7ba8769290.fit https://github.com/ThomasKuehne/FIT-test-files/tree/main/Activity/2023/Activity_20230123_002_Cycling_Strava_316afc56c074e3027f91d51c8c491ba5.fit --- .../service/devices/garmin/fit/messages/FitSession.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java index 1f1484fdb1..0fa5bd5a94 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java @@ -1918,6 +1918,12 @@ public class FitSession extends RecordData { public List toActivityPoints() { final List activityPoints = new ArrayList(); + + if(getComputedTimestamp() == null) { + // some sessions - especially from Strava, have no time stamp + return activityPoints; + } + final ActivityPoint startActivityPoint = new ActivityPoint(); startActivityPoint.setTime(new Date(getComputedTimestamp() * 1000L)); if (getStartLatitude() != null && getStartLongitude() != null) {