我正在寻找在iPhone上使用Core Location的人的一些指导。我的应用程序几乎完成了,我只是想为我的客户完成最后一件事。
我的应用是帮助用户进行锻炼。与MapMyRun类似的功能。它有一个带有开始/停止按钮和重置按钮的计时器屏幕。当点击开始按钮时,计时器开始计时,核心位置开始跟踪用户进度,计算速度和距离。我遇到的问题是核心位置试图找到用户的当前位置。下面的情景:
第1天 用户已经出去慢跑并使用该应用程序跟踪他们的进度,用户已经慢跑了一个小时,锻炼被保存。一切都按预期工作。
第2天 用户决定再次慢跑,这次是在与昨天慢跑不同的区域。让我们说10英里远。所以他们启动计时器,但核心位置需要一些时间来初始化到用户当前位置。当核心位置试图确定当前位置时,这会导致距离场无理跳跃。
我已经解释了为什么会发生这种情况,但我的客户不是很开心,他们不希望看到距离场跳跃,这是公平的。
所以我想知道是否有人有一个很好的解决方案来初始化用户当前位置的核心位置。我可以在一段时间内打破核心位置和距离场之间的联系,这将使核心位置有机会获得准确的读数。
非常感谢任何帮助。
此致 斯蒂芬
答案 0 :(得分:0)
通过报告“校准...”来稳定读数,直到位置读数大致与速度读数匹配,速度读数通常比位置更准确。
答案 1 :(得分:0)
是的,CoreLocation和GPS跟踪真的可以惹恼一个。
前一段时间有人遇到了类似的问题,并发布了一些想法和代码: CoreLocationPherhaps这有帮助。但是我仍然会展示一个activityIndicator,直到你得到你的确切位置。而且GPS跟踪不是十分之一秒......只需通过参考汽车导航系统来解释您的客户。也许他会明白的......
答案 2 :(得分:0)
尝试在进入App之前找到用户当前位置。这样您就可以直接向用户显示当前位置而无需花费很多时间。