我一直在使用 mapkit 和 SDK 3.0 编写应用程序。一切正常,除了一个细节。我注意到,在显示用户位置时,我会在地图上根据当前网络获得不同的用户位置。我已阅读有关此问题的信息并了解它很常见吗?在我的 WLAN 中正确显示了用户位置。使用 3G 网络(T-mobile)时,该位置距离我的实际位置大约 100 米。我知道这与使用三角测量的蜂窝电话网络有关,并且在 WLAN 中使用的是 GPS 或 WiFi 热点。所以,对于我的问题。有没有办法解决这个问题?我的应用程序显示城镇中的位置以及到这些位置的距离。如果由于距离短而导致位置错误,则非常明显并且会产生误导。有没有办法(在代码中)设置用于获取用户位置的方法?我已经使用地图在我的 iPhone 上测试了所有其他应用程序,而且问题似乎都是一样的。(如果有人想测试我的应用程序,它在 car2go 下的应用程序商店免费,其他评论当然也很有趣)提前致谢!-环形-
loop
问问题
938 次
3 回答
1
核心位置提供有关其报告的位置的垂直和水平精度的信息。如果位置可疑,则应使用该准确性向用户报告。谷歌地图通过增加位置标记周围蓝色圆圈的大小来做到这一点。还有其他方法可以向用户表明该位置是可疑的,警告框,如果该位置超出某些预定精度,则不显示该位置等。
于 2009-08-25T13:07:17.157 回答
0
为您的位置使用替代来源?便携式 GPS 装置可以解决问题。
真正的问题是如何纠正 3G 三角测量指定的数据。我想知道你是否可以做一个差分来纠正 3G 的位置错误。
1) 在给定城市中,通过绘制城市来校准 3G 位置误差。这可以随时被 3G 网络纠正,因此您必须有一种方法来验证和重新校准。
2) 使用已知位置校准 3G 网络的位置 - 3G 位置以及 GPS 位置。将其视为可应用于其他 3G 位置的差异。这假设三角测量计算中存在一致的偏移,这可能不是现实。
3)等待3G网络修复它,同时什么也不做。
4) 向 3G 网络提供商提供三角测量中的错误信息,看看这是否是他们的优先事项。
我想不出任何其他可行的选择...
于 2009-08-25T12:24:47.843 回答
0
也许您可以直接使用 CoreLocation。CLLocationManager
给你CLLocation
的对象比包括它们的准确性。如果您获得的精度低于 50 米,则该位置可能来自 GPS。
于 2009-08-25T12:59:44.030 回答