Gpx: export track name

Some Garmin devices only read gpx/trk/name and ignore gpx/metadata/name.
Export the same name to both.
This commit is contained in:
Thomas Kuehne
2026-04-03 18:53:54 +02:00
committed by José Rebelo
parent de1c74f223
commit 05b229c833
2 changed files with 9 additions and 2 deletions
@@ -1,4 +1,4 @@
/* Copyright (C) 2017-2025 Andreas Shimokawa, AndrewH, Carsten Pfeiffer,
/* Copyright (C) 2017-2026 Andreas Shimokawa, AndrewH, Carsten Pfeiffer,
Daniele Gobbetti, Dikay900, José Rebelo, Nick Spacek, Petr Vaněk, Thomas Kuehne
This file is part of Gadgetbridge.
@@ -147,6 +147,13 @@ public class GPXExporter implements ActivityTrackExporter {
private void exportTrack(XmlSerializer ser, ActivityTrack track) throws IOException, GPXTrackEmptyException {
String uuid = ((this.uuid != null) ? this.uuid : UUID.randomUUID()).toString();
ser.startTag(NS_GPX_URI, "trk");
// some Garmin devices only read gpx/trk/name and ignore gpx/metadata/name
String trackName = track.getName();
if (trackName != null) {
ser.startTag(NS_GPX_URI, "name").text(trackName).endTag(NS_GPX_URI, "name");
}
ser.startTag(NS_GPX_URI, "extensions");
ser.startTag(NS_GPX_URI, OPENTRACKS_PREFIX + ":trackid").text(uuid).endTag(NS_GPX_URI, OPENTRACKS_PREFIX + ":trackid");
ser.endTag(NS_GPX_URI, "extensions");
+1 -1
View File
@@ -1 +1 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?><gpx version="1.1" creator="Gadgetbridge Test" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v2 http://www.garmin.com/xmlschemas/TrackPointExtensionv2.xsd http://opentracksapp.com/xmlschemas/v1 https://raw.githubusercontent.com/OpenTracksApp/OpenTracks/main/doc/opentracks-schema-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v2" xmlns="http://www.topografix.com/GPX/1/1" xmlns:opentracks="http://opentracksapp.com/xmlschemas/v1"><metadata><name>Test Track</name><author><name>Test User</name></author><time>2025-10-17T21:00:00Z</time></metadata><trk><extensions><opentracks:trackid>c5185301-d578-4e52-bb9f-c2a7afa044e2</opentracks:trackid></extensions><trkseg><trkpt lon="9.739380" lat="47.504883"><ele>-440.2</ele><time>2025-10-03T15:10:59Z</time><desc>a description</desc><hdop>1.4</hdop><vdop>3.2</vdop><pdop>1.5</pdop><extensions><gpxtpx:TrackPointExtension><gpxtpx:atemp>28.299999237060547</gpxtpx:atemp><gpxtpx:depth>26.299999237060547</gpxtpx:depth><gpxtpx:hr>123</gpxtpx:hr><gpxtpx:cad>22</gpxtpx:cad><gpxtpx:speed>23.299999237060547</gpxtpx:speed></gpxtpx:TrackPointExtension></extensions></trkpt><trkpt lon="9.556050" lat="47.608993"><ele>8849.2</ele><time>2025-10-03T15:21:07Z</time><desc>a comment</desc><extensions><gpxtpx:TrackPointExtension><gpxtpx:atemp>34.29999923706055</gpxtpx:atemp><gpxtpx:depth>10345</gpxtpx:depth></gpxtpx:TrackPointExtension></extensions></trkpt><trkpt lon="9.472961" lat="47.655945"><time>2025-10-03T15:30:00Z</time><extensions><gpxtpx:TrackPointExtension><gpxtpx:atemp>40.400001525878906</gpxtpx:atemp><gpxtpx:depth>41.400001525878906</gpxtpx:depth><gpxtpx:hr>42</gpxtpx:hr><gpxtpx:cad>43</gpxtpx:cad><gpxtpx:speed>44.400001525878906</gpxtpx:speed></gpxtpx:TrackPointExtension></extensions></trkpt><trkpt lon="-19.000000" lat="-43.000000" /></trkseg></trk></gpx>
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?><gpx version="1.1" creator="Gadgetbridge Test" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v2 http://www.garmin.com/xmlschemas/TrackPointExtensionv2.xsd http://opentracksapp.com/xmlschemas/v1 https://raw.githubusercontent.com/OpenTracksApp/OpenTracks/main/doc/opentracks-schema-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v2" xmlns="http://www.topografix.com/GPX/1/1" xmlns:opentracks="http://opentracksapp.com/xmlschemas/v1"><metadata><name>Test Track</name><author><name>Test User</name></author><time>2025-10-17T21:00:00Z</time></metadata><trk><name>Test Track</name><extensions><opentracks:trackid>c5185301-d578-4e52-bb9f-c2a7afa044e2</opentracks:trackid></extensions><trkseg><trkpt lon="9.739380" lat="47.504883"><ele>-440.2</ele><time>2025-10-03T15:10:59Z</time><desc>a description</desc><hdop>1.4</hdop><vdop>3.2</vdop><pdop>1.5</pdop><extensions><gpxtpx:TrackPointExtension><gpxtpx:atemp>28.299999237060547</gpxtpx:atemp><gpxtpx:depth>26.299999237060547</gpxtpx:depth><gpxtpx:hr>123</gpxtpx:hr><gpxtpx:cad>22</gpxtpx:cad><gpxtpx:speed>23.299999237060547</gpxtpx:speed></gpxtpx:TrackPointExtension></extensions></trkpt><trkpt lon="9.556050" lat="47.608993"><ele>8849.2</ele><time>2025-10-03T15:21:07Z</time><desc>a comment</desc><extensions><gpxtpx:TrackPointExtension><gpxtpx:atemp>34.29999923706055</gpxtpx:atemp><gpxtpx:depth>10345</gpxtpx:depth></gpxtpx:TrackPointExtension></extensions></trkpt><trkpt lon="9.472961" lat="47.655945"><time>2025-10-03T15:30:00Z</time><extensions><gpxtpx:TrackPointExtension><gpxtpx:atemp>40.400001525878906</gpxtpx:atemp><gpxtpx:depth>41.400001525878906</gpxtpx:depth><gpxtpx:hr>42</gpxtpx:hr><gpxtpx:cad>43</gpxtpx:cad><gpxtpx:speed>44.400001525878906</gpxtpx:speed></gpxtpx:TrackPointExtension></extensions></trkpt><trkpt lon="-19.000000" lat="-43.000000" /></trkseg></trk></gpx>