在iphone模拟器上使用核心位置

时间:2010-08-20 10:30:40

标签: iphone ios ios-simulator core-location

我正在开发基于GPS的应用程序。所以我想知道如何在iphone模拟器上模拟位置? 我下载了一个示例应用程序locateMe。这个程序在模拟器上不起作用。模拟器不支持位置api吗?

任何帮助都将不胜感激。

5 个答案:

答案 0 :(得分:14)

<强>更新 iOS 5的Xcode 4.2支持GPS定位。

选择模拟器 - &gt;调试 - &gt;位置 - &gt;自定义位置......

以前的版本

没有模拟器不支持它。因此,对于GPS,您必须在设备中安装应用程序以进行检查。

模拟器会给你经度和纬度作为库比蒂诺的地址苹果总部所在地。

所以你必须只使用设备。

快乐编码

答案 1 :(得分:5)

根据the documentation,使用模拟器时:

  

“由此报告的搬迁   CoreLocation框架中   模拟器固定如下   坐标(精度100米),   对应于1个无限循环,   Cupertino,CA 95014。

     

纬度:37.3317北经度:   122.0307 West“

所以,实际上,你应该能够构建应用程序,但你不太可能对它做任何有用的事情。

答案 2 :(得分:3)

您可能想在http://github.com/futuretap/FTLocationSimulator

查看我的FTLocationSimulator

它会读取Google地球生成的KML文件,以提供伪造的位置更新。它还使用模拟的位置更新来更新MKMapView中的蓝色userLocation点。

答案 3 :(得分:2)

在Xcode 4.2中我们可以模拟。调试区域上有一个位置符号(当您运行应用程序时)。有一些预定义的位置。我们还可以add新的GPX文件

答案 4 :(得分:1)

解决方案是继承CLLocationManager并定义一个名为DLocationManagerDelegate的新委托@protocol。

它被设计为CLLocationManagerDelegate的简单替代品,在实际设备上部署时可编译为非常薄的层。

在设备上运行时,它将使用CoreLocation正常返回数据,但在模拟器中,它将从文本文件(在DLocationManager.h文件中定义)中读取纬度和经度。

我希望这会有所帮助,实现很简单,你必须使用startUpdatingLocation和stopUpdatingLocation来更新显示。

http://code.google.com/p/dlocation/