【问题标题】:iPhone Simulator providing location results提供位置结果的 iPhone 模拟器
【发布时间】:2011-02-20 23:43:43
【问题描述】:

我正在使用 iOS SDK 4.2 并遵循本教程:http://mobileorchard.com/hello-there-a-corelocation-tutorial/,并在使用 iPhone 和 iPad 的控制台上获取了一些 GPS 日志。

然后我在模拟器上运行它以测试其他功能,CoreLocation 日志命中 locationManager:didFailWithError: 方法,这是公平的,因为 MacBookPro (OSX 10.6.6) 没有 GPS 功能......或者我想。

今天早上,我在工作时而不是在家中再次在 iPad 上进行了测试,现在在没有连接任何设备的情况下在 iPhone 模拟器上进行测试,模拟器提供了我办公室的位置结果(不,我不在库比蒂诺工作)并且水平精度每次在45-56m之间变化,最多只给出两个样本(大概是因为我的笔记本没有移动)。

现在我已经完全关闭了 XCode 和模拟器,并从模拟器中删除了应用程序并执行了清理和重建,但仍然获得了我当前的坐标。我也可以在没有互联网访问的情况下复制它,以防模拟器使用某种 GeoIP 时很棘手。

模拟器从哪里获取我的位置信息?

我想也许今天早上我使用 iPad 时模拟器存储了一些 GPS 位置数据,但没有连接设备并清理启动所有内容,它提供了不同的结果,例如 +/- 0.000001 度数的变化。

【问题讨论】:

    标签: iphone gps coordinates simulator


    【解决方案1】:

    来自 MacBook 的 IP 地址,或者,如果它在 WiFi 上,则来自 WiFi 网络的存储位置。由于它对您来说非常准确,所以它是 WiFi,因为 IP 地址方法通常将其范围缩小到一个城市,或者充其量是城市的一部分。

    Skyhook 为美国和世界其他一些地区的大多数 WiFi 网络提供地理位置信息,这些信息是 Apple 订阅的。


    编辑添加

    显然,Apple 去年 4 月放弃了 Skyhook,现在使用自己的数据库,但系统是一样的。就像 Google 在德国陷入困境一样,有人开车四处寻找 WiFi 网络并记录他们的位置。

    【讨论】:

    • 另外补充一点,我没有阅读日志上的时间戳。 GPS 的第一个读数始终是它收到的最后一个读数。因此,从外观上看,当它启动模拟 GPS 单元时,即使关闭 wifi 但不查看时间戳,它也会触发位置更改,这是一个新手疏忽。
    猜你喜欢
    • 2010-12-06
    • 1970-01-01
    • 2015-08-22
    • 1970-01-01
    • 1970-01-01
    • 2011-01-04
    • 2010-09-17
    相关资源
    最近更新 更多