前言
为了方便测试与位置相关的功能,苹果为开发者们提供了非常方便的模拟定位的功能。
模拟器
在iOS模拟器模拟定位非常简单,因为模拟器自带里这个功能,如下:
网络异常,图片无法展示
|
gpx
但是真机上没有模拟器的这个功能,所以苹果为了真机又提供了另外一个功能——gpx
首先在项目中创建一个gpx文件,如图:
网络异常,图片无法展示
|
填写文件名称后就创建了一个gpx文件,创建后文件内容如下:
<?xml version="1.0"?> <gpx version="1.1" creator="Xcode"> <!-- Provide one or more waypoints containing a latitude/longitude pair. If you provide one waypoint, Xcode will simulate that specific location. If you provide multiple waypoints, Xcode will simulate a route visiting each waypoint. --> <wpt lat="37.331705" lon="-122.030237"> <name>Cupertino</name> <!-- Optionally provide a time element for each waypoint. Xcode will interpolate movement at a rate of speed based on the time elapsed between each waypoint. If you do not provide a time element, then Xcode will use a fixed rate of speed. Waypoints must be sorted by time in ascending order. --> <time>2014-09-24T14:55:37Z</time> </wpt> </gpx> 复制代码
默认的地址是美国的一个地址,我们可以改成自己需要的地址的经纬度即可。然后还需要修改一下运行的配置,点击下图位置
网络异常,图片无法展示
|
在弹窗中选择“Edit Scheme”
网络异常,图片无法展示
|
在窗口中的run页面下Options中将default location设置为刚才创建的gpx文件
网络异常,图片无法展示
|
最后,在真机上运行项目,然后打开手机上的地图发现当前定位转移到了文件中设定的位置了。
除了修改gpx中的经纬度重新运行可以改变位置。在运行到设备上后,还可以在xcode中动态切换位置,如下
网络异常,图片无法展示
|
在列表中选择其他地点即可立刻切换到该位置。这样就需要我们提前多创建几个gpx文件以供使用。