Python 模拟真实运动轨迹,轻松完成长跑和打卡 |
您所在的位置:网站首页 › 怎样模拟导航真实路线 › Python 模拟真实运动轨迹,轻松完成长跑和打卡 |
在Xcode上创建新项目,打开Xcode -> create a new Xcode project 选择ios菜单 -> Single View App,填写项目名 推荐非中文,在事先准备好的文件夹内存放 文件夹推荐非中文 此时将iPhone连接mac 左上角显示连接设备 出现如下结果即为成功: 2.使用Xcode创建一个含有gpx的文件 GPX(GPS eXchange Format,GPS交换格式)是一个XML格式,为应用软件设计的通用GPS数据格式,专门用来存储地理信息 一个GPX文件内包含一些经纬度点组成的轨迹,包含了时间、名字等信息 回到Xcode 打开Xcode -> File -> New -> File... 在IOS菜单下选择GPX File 选择一个位置并命名GPX文件 例:fake_loc.gpx 自动生成如下gpx文件即为成功 分析该gpx文件,格式类似标签语言风格 在 标签内包含经纬度(lat、lon)、该点名称以及时间 第一段注释内容大意为: “提供一个或多个包含纬度/经度对的点_ 如果提供一个点,Xcode将模拟那个特定的点_ 如果提供多个点,Xcode将依次模拟每一个点”_第二段注释内容大意为: “可以选择为每一个坐标点添加一个时间标签_可,Xcode可以根据时间标签的顺序依次移动到每一个坐标点,并根据时间点来插入速度X 如果不提供一个时间标签,那么Xcode将使用一个固定的速度_ 航路点必须按时间升序排序_”因此,可以通过输入一系列点来模拟位置,让Xcode来依次定为每一个点来模拟人的跑动行为 3.使用Python来自动生成一系列轨迹点 mac下python与sublime text3的环境配置在第一篇随笔中有记录 分析gpx文件结构可以得到目标gpx文件结构应该为: 在地图经纬度查询网站可以得到指定地点的经纬度信息:http://www.gpsspg.com/maps.htm 我们选择西安市某211高校作为实验地点: 该网站提供多个公司的定位标准下的经纬度信息 由于每一家公司的定位标准不同,经纬度就会存在偏差,这时候就要看用来模拟的APP使用哪家的地图了 我们以某跑步打卡APP 步道乐跑 作为实验对象,在该高校实现水平移动与竖直移动 经过验证该APP使用的是 谷歌地球标准,通过该网站首先得到一段直线的首尾经纬度点: 开始点: lat:34.3752989239lon:108.9080291565 中间点: lat:34.3740193255lon:108.9085977848 结束点: lat:34.3733728774lon:108.9064091023 在该网站可以通过经纬度获得距离信息:http://www.hhlink.com/经纬度/ 计算得到距离约为78米 后续可根据需求,通过测距来得到相应距离 从而计算得到水平与竖直移动速度 可以得出结论: 在该高校相对从北到南 经度减少,纬度增加 在该高校相对从东到西 经度减小,纬度减小在符合跑步打卡APP步道乐跑的配速要求:3~9 min/km,例如从北到南生成100个点 经度依次减少 纬度依次增加,并使得这100个点散布在路径上 每个点之间减少或者增加的距离可以通过乘以指定范围内的随机数,使得点之间呈现左右略为摇摆的路径 在点数量较多的情况下近似为人的跑动轨迹 根据该高校的位置情况编写相应的python程序: 得到输出(节选): 将该输出复制并粘贴在gpx文件里 并 command + s 保存 可以在xcode项目目录内找到并打开该文件: 4.开始位置模拟 确保手机连接上电脑,并解锁保持屏幕常亮 点击Xcode右上角开始图标: 第一次会提示iPhone未信任开发者 在设置 -> 通用 -> 设备管理 点击该开发者并选择信任 再次在Xcode上点击右上角图标 一分钟左右手机上会多出一个灰色的app图标 点击后按home键退出,进入步道乐跑 在Xcode下方多出一栏功能,点击位置图标并选择你的fake_loc 此时APP就已经按照gpx文件内的路径开始移动了 总结 在模拟时没有考虑速度的因素,按照默认的Xcode对gpx的点的更新速度来实现的 在控制整体的移动速度时完全是按照点的密集程度,即点的位置变化程度来实现的 后期可以根据时间标签来改进获得更精确的速度 根据步道乐跑后台数据,检测作弊主要依靠平均配速、每公里的步数、设备uuid、设备序列号来检测的 文章的方法可以解决平均配速、uudi、序列号等问题(因为就是使用真机来实现的) 但是对于步数只能依靠在模拟时通过摇晃手机来实现 原文:https://www.cnblogs.com/Joeric07/p/11173651.html返回搜狐,查看更多 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |