安卓模拟器加载GPX文件后位置顺序错误

4
我有一个关于Android模拟器的问题。我正在创建一个应用程序,使用位置信息来注册轨迹等。问题是:当我在模拟器的扩展控件中加载GPX文件时,位置没有正确排序,因此骑自行车的人会从他通常的路线跳到完全不同的路线上。

enter image description here

红线是注册轨迹。它有一个大的波动,然后返回到正常路线。在“扩展控制”窗口中,您可以看到“名称”列中有一个数字62,即使其他数字按顺序列出为从55到49的数字。整个列中有很多这样的“数字跳跃”。
我的问题是:我是否可以以名称为依据在扩展控件中设置顺序?即使如此,对于没有包含“名称”参数的其他GPX文件呢?也许我应该更改GPX文件中的某些内容?或者以不同的方式加载它?
2个回答

3
这里有一个解决路径排序问题的工作流程 - 这种方法添加了有序时间戳,如@Miq所提到的其他答案。
  1. 使用Google地图生成路径并导出URL(或上传现有的gpx文件)。

  2. 使用GPS Visualizer (http://www.gpsvisualizer.com/convert_input) 将其转换为GPX(将URL粘贴到“Or provide the URL of a file on the Web:”字段中,并使用高级选项“Add artificial timestamps (for OpenStreetMap import):”)

  3. 按下转换按钮并将输出粘贴到编辑器中以本地保存。

  4. 使用Extended Controls - Location加载文件。

有序时间戳可以维护路径顺序。实际时间戳值并不重要,只需要相对顺序即可。

1
无法在模拟器中对给定的位置进行排序。 如果您的GPX文件提供了“时间”元素,则加载的点将根据该值进行排序,并添加延迟。 但是,该参数是可选的,因此在这种情况下,模拟器应按文件顺序加载它,但它没有这样做(正如您注意到的那样)。这似乎是Android模拟器中的一个错误 - 来自KML文件的点按顺序加载。 目前,将您的GPX转换为KML格式,或检查您的设备是否可以提供时间条目。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接