在iOS模拟器中使用GPX文件时,不会停在最后一个坐标处,而是不断循环。

8
我已经阅读了很多关于在iOS模拟器上模拟位置的问题/答案,但没有涉及到我的特定问题。我有一个位置感知应用程序的原型,我配置它使用如此描述的GPX文件:How to solve Xcode 4.1 (LION) GPS error?,它运行得很好并提供我需要的所有信息,唯一的例外是:当我们移动到GPX文件中定义的最后一个位置时,我希望位置更新停止。相反,当前位置会在循环中不断更新,返回到起始位置并一直循环,直到你停止它。
我尝试标记我想要逗留的区域周围的位置,但它忽略了它们。这可能与位置的最小变化有关,但它只是忽略它并继续循环。
创建了一个快速项目来说明这个问题,并将其加载到GitHubhttps://github.com/acolchado/LocationPrototype 按照以下步骤重现:
  1. 在xcode中加载该项目,我使用xcode 4.4.1创建它。
  2. 运行该项目。
  3. 从调试面板中找到位置箭头。单击箭头并从上下文菜单中选择“SanBruno_To_Downtown_SF”。
  4. 将模拟器置于前台,并观察无限循环
我已经到处寻找解决这个问题的方法,但我找不到任何关于循环的提及。如果有人能在这里提供任何帮助,我将不胜感激。
谢谢,
Agustin

1
有没有运气得到比作弊更好的东西? - Nitin Alabur
3个回答

4

我的作弊方法:

只需将最后一个路标在您的.gpx文件中复制粘贴多次(足够使其保留在那里,直到满足您的要求)


3

您还可以在gpx文件中添加时间戳。通过设置一个非常长的时间戳,让自己停留在最后一个站点。


2
为了帮助 OP 解决当前的问题,可以在答案中添加一些解释说明。 - ρяσѕρєя K

1

对我起作用的是结合其他两个答案并稍微修改最后/重复坐标。

  1. 复制最后一个坐标。
  2. 修改最后/重复坐标,使其不再是重复的。苹果必须忽略完全相同的坐标。
  3. 给最后一个坐标一个长时间戳。

示例:

<wpt lat="37.782511" lon="-122.448453"><time>1970-01-01T00:00:00Z</time></wpt>
<wpt lat="37.782051" lon="-122.451981"><time>1970-01-01T00:00:05Z</time></wpt>
<wpt lat="37.782050" lon="-122.451981"><time>1970-01-01T10:00:00Z</time></wpt>

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