最近有朋友问我,如何在iPhone模拟定位。关于这个问题,有两点需要注意:
1、iPhone模拟定位,唯一靠谱的办法就是在Xcode里通过debug程序的方式来模拟
2、Xcode只有MacOS系统可以运行,Windows还是不要想了。
目录
- 一、Xcode安装
- 二、首次运行Xcode
-
- 1、创建新的空白工程
- 2、申请开发者证书
- 三、创建gpx描述文件
-
- 1、新建gpx文件
- 2、选择GPX File并创建
- 3、编辑GPX文件
- 四、运行项目并模拟定位
-
- 1、连接手机
- 2、运行项目
- 3、debug选项内开启位置调试
- 五、关于国内GPS坐标
一、Xcode安装
在MacOS的AppStore里搜索Xcode,然后安装。
目前,最新的Xcode为12.2版本,支持到最新的iOS 14.2.

二、首次运行Xcode
1、创建新的空白工程

创建一个类型为,iOS APP的空白应用


2、申请开发者证书
我们可以以个人名义申请开发者证书,只需要在Xcode内登陆AppleID,即可为自己的设备申请证书。
该证书允许开发者在自己的(或者其他信任该证书)iOS设备上,安装开发阶段的iOS App。
点击xcode->偏好设置

在账户选项卡内,点击左下角的添加按钮,添加一个新的AppleID,此AppleID最好与手机登录的AppleID保持一致。


登录完成之后,会为你生成一个个人证书,证书名称为你的AppleID名字
接下来,在项目的配置中,选择使用这个证书。

三、创建gpx描述文件
1、新建gpx文件
右键项目->新建文件

2、选择GPX File并创建
在搜索栏,输入“gpx”可以快速找到GPX格式的文件模板

3、编辑GPX文件
回到资源视图,即可以看到刚才创建的gpx文件。这里可以看到wpt标签内lat和lon字段标记即将模拟定位的经纬度。

四、运行项目并模拟定位
1、连接手机
连接手机后,手机端输入屏幕解锁密码后,Xcode会识别到该设备,并在其运行资源内出现。

2、运行项目
command+R。或者点击Xcode项目资源栏上的“运行”按钮。
第一次运行项目,不出意外,会报错。
不要慌,打开你的手机,进入设置->通用->描述文件与设备管理->开发者app->找到你的AppleID证书->信任。
然后再次运行项目

成功运行后,手机会打开一个新App,默认情况下屏幕上能看到一句,“Hello,world!”此时,可以返回到主屏幕,但是不要退出该App运行。

3、debug选项内开启位置调试
debug>Simulate Location>选中刚才我们创建的GPX文件

然后打开地图,看看我们被传送到了那里?
默认的GPX文件内的坐标,是苹果的总部。

五、关于国内GPS坐标
为保证国土安全,国家测绘局要求,国内出版发行的地图,不能直接使用WGS84坐标系,需使用加密后的国测局坐标(GCJ-02)。同时,禁止个人对我国领土进行测绘。
关于以上内容,感兴趣的同学可以移步回形针的视频。
【回形针PaperClip】怎样画一张地图?
高德、腾讯使用的是投影坐标系统(GCJ-02)也就是我们平常所说的火星坐标系。
百度使用的是投影坐标系统(BD09)在GCJ-02基础上二次加密而成。
具体坐标拾取参考下面
高德地图坐标拾取
百度地图坐标拾取
腾讯地图坐标拾取
我国位于东半球、北半球(经纬度:东经正数西经为负数,北纬正数南纬为负数,经度分为360度,每15度1个时区;
经纬度变化1度,地表距离变化大约111km,1分大约1.85km,1秒大约30.8m,如果坐标拾取的有偏差可以自己微调下。