利用开发者的一些调试功能,我们可以修改非越狱的苹果手机定位,模拟任意位置。

经测试,此方法仅限开发者调试使用,并不能长时间修改手机定位。

1. 首先需要了解一些坐标系的知识

iOS,原生坐标系为 WGS-84

高德以及国内坐标系:GCS-02

百度的偏移坐标系:BD-09

这些先了解,下面需要用到转换

2. 从高德地图拾取网页上找到要模拟的地点坐标,这里我测试使用 九寨沟

http://lbs.amap.com/console/show/picker

得到高德坐标:103.627229,32.755169

由于此坐标在手机上地图显示时,会有偏移误差,所以需要转换成 WGS-84苹果用;

在网上找算法转换后:

得到九寨沟坐标:33.144513 103.910688

在后面的.gpx文件中就放上转换后的坐标,以后修改此处来模拟其他位置

3. 用Xcode创建一个工程FakeGPS

此时在外面新建立一个 JZG.gpx 的 XML 文件 文件信息如下,然后导入工程

<?xml version="1.0" encoding="UTF-8" ?>
<gpx version="1.1"
creator="GMapToGPX 6.4j - http://www.elsewhere.org/GMapToGPX/"
xmlns="http://www.topografix.com/GPX/1/1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
<wpt lat="33.144513" lon="103.910688">
<name>chengdu</name>
<cmt>九寨沟</cmt>
<desc>九寨沟</desc>
</wpt>
</gpx>

4. 在工程 Produce---Scheme---Eidt Scheme---Options ---

在 Default location 里面选择导入的 JZG ;就是上面JZG.gpx的文件名,对应上述地理位置;

OK, 真机运行FakeGPS工程;

5. 在手机上运行FakeGPS工程,然后打开 手机上的高德地图app,定位,即可看到当前位置已模拟在目的地了,

同样查看微信定位,也是要模拟的位置了;

6. 实测上面的位置并不会永久修改,当模拟位置的app退出或是一些其他原因模拟的位置就会不在起作用;

也印证了该功能仅用于开发者调试使用,不过对于一些短时间的修改位置测试使用场景够用了

7. 演示工程的DEMO下载

https://github.com/cocoajin/TDDDemo/tree/master/FakeGPS

参考:

坐标转换 http://blog.csdn.net/jijiji000111/article/details/52468042

iOS修改手机定位(非越狱任意位置)的更多相关文章

  1. iPhone模拟定位(非越狱修改手机定位)

    剩下的事情就是build一下到手机,那么,就可以看到神奇的效果!   本次带来一个简单又好玩的实用功能,比如定位装逼(共享定位非分享可选那种),又或者定位打卡之类,由于改变的是设备级别的定位,本设备所 ...

  2. iOS LBS相关: 定位和中国特色的位置偏移纠正

    LBS模块,首先当然是定位,获取自己所在的位置.主要用到的就是CLLocationManager,实例一个,然后调用startUpdatingLocation即可.其中可以指定精度CLLocation ...

  3. 微信双开是定时炸弹?关于非越狱iOS上微信分身高危插件ImgNaix的分析

    作者:蒸米@阿里移动安全 序言 微信作为手机上的第一大应用,有着上亿的用户.并且很多人都不只拥有一个微信帐号,有的微信账号是用于商业的,有的是用于私人的.可惜的是官方版的微信并不支持多开的功能,并且频 ...

  4. 使用Xcode7非美刀购买开发者帐号,非越狱安装IOS ipa

    做苹果开发,需要至少99美刀注册开发者帐号,这样写出来的程序才可以在真机上运行调试,才可以发布到app store,现在xcode7之后苹果有了调整,除了发布到app store还是需要美刀帐号,其它 ...

  5. 一步一步实现iOS微信自己主动抢红包(非越狱)

    前言:近期笔者在研究iOS逆向project,顺便拿微信来练手,在非越狱手机上实现了微信自己主动抢红包的功能. 题外话:此教程是一篇严肃的学术探讨类文章,只用于学习研究,也请读者不要用于商业或其它非法 ...

  6. IOS 使用DSYM文件定位Bug 的具体位置

    在项目的开发中,我们通常需要排查和修改测试中和发布后线上的一些bug,现在有一些第三方的bug分享和查找工具SDK,如腾讯的Bugly和听云等,包括苹果的开发工具xcode也自带 bug查找工具.那么 ...

  7. 改Android手机定位位置

    手机定位方法 1,gps等卫星定位,如美国的gps,欧洲的伽利略,中国的北斗等,通过至少三颗卫星,用三角定位和时间等算法,计算出设备的经纬度,到地图上找到这个经纬度的地名 2,移动运营商基站定位,通过 ...

  8. 【Android】第18章 位置服务和手机定位—本章示例主界面

    分类:C#.Android.VS2015: 创建日期:2016-03-04 一.简介 目前,基于位置的服务发展迅速,已涉及到商务.医疗.定位.追踪.敏感区域警告.工作和生活等各个方面.定位服务融合了G ...

  9. iOS钉钉远程打卡助手(支持越狱和非越狱)

    前言:本文主要讲述使用hook方式实现钉钉远程打卡功能,涉及到tweak相关知识,如果你不想了解具体实现细节可直接到我的Github地址参考安装(包含越狱和非越狱两种方法)   你是不是像小编一样每个 ...

随机推荐

  1. web页面隐藏鼠标

    Java web项目需求需要做一个在页面中,鼠标隐藏,来浏览页面,让客户不能点金页面 重要代码: $('*').css('cursor','none!important'); 示例: <styl ...

  2. SQL基础巩固1

    直接开门见山------F4 1.查询 对指定的数据表或是视图进行检索查询,找出符合查询条件功能,具体包括以下SQL语法如下所示,其中[]为可选项 Select<列名> From<表 ...

  3. sdk 更新的时连接不上dl-ssl.google.com解决办法

    今天有朋友说sdk的更新不了,借了个VPN给他也没解决问题,后来还是他自己解决了,下面分享下经验 这里介绍一种不需要FQ的解决办法,修改C:\Windows\System32\drivers\etc下 ...

  4. iOS cocospods Updating local specs repositories

    pod install --verbose --no-repo-update (在安装的时候) pod update --verbose --no-repo-update (在更新库的时候) 如果长时 ...

  5. HttpURLConnection请求

    方法调用: //测试 public static void main(String[] args) { Map map = new HashMap(); map.put("type" ...

  6. logstash使用操作部分

    1.logstash的概念及特点.概念:logstash是一个数据采集.加工处理以及传输(输出)的工具.特点: - 所有类型的数据集中处理 - 不同模式和格式数据的正常化 - 自定义日志格式的迅速扩展 ...

  7. Windwos服务器远程桌面不能复制粘贴的解决方法

    今天使用远程桌面连接登陆服务器,发现不能在本地电脑和远程服务器之间复制粘贴文件了,复制粘贴文本也不行. 网上搜了一下,主要有两种情况: 1.复制粘贴功能原本可以用,突然失灵了2.从头到尾都无法使用这个 ...

  8. JAVA邮件发送的简单实现

    JAVA MAIL是利用现有的邮件账户发送邮件的工具,比如说,我在网易注册一个邮箱账户,通过JAVA Mail的操控,我可以不亲自登录网易邮箱,让程序自动的使用网易邮箱发送邮件.这一机制被广泛的用在注 ...

  9. GridView布局,自定义适配器,水平滚动

    添加GridItem布局XML文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...

  10. enbale blakboxing

    chrome://flags/#enable-devtools-experiments