阳光体育长跑 APP 模拟技术探究
记录一次对阳光体育长跑 APP 模拟思路的研究,包括 GPS 位置模拟和运动数据构造。
上次写下 玩转 Android 刷机 Root 后收益颇多。其中最重要的是认识了哲 ♂ 学导师 czp,同时给自己挖了个坑:阳光体育长跑。
关于这个阳光体育长跑,除了骑自行车、滑轮滑、踩滑板,应该还有几个打开(偷懒)姿势。
模拟运动
一般来说,长跑 App 都调用本机 GPS 定位 来实现运动记录。还有一种是传感器定位,但比较少,本文不讨论。那么只要让手机 GPS 信号 模拟动起来,问题就解决了。
关于模拟运动,介绍两款 App:Daniu、Fake Location。
这应该是现在市面上所谓一块钱垃圾代跑最常见的解决思路。唯一麻烦的是,Root 后才能比较奔放:@(不出所料)
模拟定位和运动的操作不复杂,摸摸 App 就会。这里主要记录思路,不贴所谓的保姆教程。
关于 Root 刷机,可以参考这篇:扒开 Android 刷机 Root 的衣服
App 虚拟定位
Daniu
Daniu1.1.8.apk 之前的版本免费。虽然免费版在这里共享出来了,还是建议支持作者吧,不贵。

Fake Location
Fake Location.apk 相比 Daniu 多了步频模拟。更重要的是,不 Root 也能模拟运动,但某些 App 可能模拟不上,应该是权限问题,Root 后会更稳。没有白嫖版,请支持作者。
(XJU西交体育是创高的产品,亲测 Daniu 模拟定位失败。但 Fake Location 不 Root 模式模拟定位,过阳光体育
安卓模拟器
Apple boy 苦于没有 Root 的安卓机。想过 Root 安卓模拟器,按网上的办法折腾 n 次都失败了,最后丢坑。
不过,用安卓模拟器刷长步,也不是没有办法。
夜神模拟器有自带的模拟位置,但没有模拟扫街。那就小范围连续切换 模拟位置 点,GPS 一样会变化。
只要位置变化不太大,就有了运动效果,再结合模拟器的摇一摇,甚至能把步频也模拟出来。
这个操作效率不高,但是非常有意思,同时操作的时候需要把握点之间合适的距离,就能模拟运动和抖动。@自救默示录 给出了比较硬核的推导(其实就是地球上经纬度算直线距离,只是我地理和数学都要丢了反三角都看不懂了,那就硬核把。)
My Android Tools Hook 本地数据库
本方法需要 Root。My Android Tools.apk 又称写轮眼,它能管理 Android 的四大基本组件。说句人话,就是能实时修改 App 里的本地数据。
大致原理是:写轮眼能修改你跑了多少 km、跑了多少 s。改完后再打开阳光体育,App 会自动检测变化后的数据,然后触发上传,直接上传修改后的记录。
坦白说这个也是楼上的 @自救默示录 的思路,这里有个比较详细的操作教程
其他问题
步频问题
通用记步原理和手机传感器的加速度有关。所以骑车刷长跑时,你会发现步数是 0。
要想在上传成绩中,拥有步数。有软办法和物理办法:
- 软办法:
- 在安卓模拟器中,可以用摇一摇摇出步数来
- 在付费版 Fake Location(Root模式) 中模拟步频
- 物理办法:
- 当然是一直甩手一直摇摇摇
- 摇步器

多开问题
多开分身.apk 可以在一台手机上登录多个微信,就不用每天换着登录微信再验证阳光体育。
这里啰嗦一句,我之前手机配置低,多开直接卡死。每天要登陆 n 个微信号切换阳光体育,解决方案是:
按键精灵,录制每个号的微信的密码账号输入脚本
多开之后,全局模拟运动,就能一口气同时跑 n 个。缺点也显而易见:手机配置吃不消。
针对此解决办法是:电脑开安卓模拟器(推荐夜神模拟器,自带模拟位置) 或 手机云(金手指、腾讯WeTest)
AiPao 脚本
接下来就是解放双手的压轴货了。
只要会安装配置 JRE 环境,就能一拳一个阳光体育。
打开姿势
- 官网下载 JRE
- 配置 JRE 环境变量
- 下载 Aipao_v1.2.4 脚本 并解压,双击 start.bat (macOS Terminals下: bash start.bat)
看到输入提示后,输入 IMEICode 就好了:
那么获取 IMEICode:
- 安装抓包软件。Android: Packet Capture.apk
- 先打开抓包软件(并安装 SSL),再打开阳光体育
- 微信登陆
- 去抓包的软件中筛选 client4.aipao.me 的请求,在响应体中找到 IMEICode(若多次抓不到: 来回切换几次飞行模式, 再打开阳光体育
回车看到下图:那,你已经精通一拳一个阳光体育了

只要不登陆 阳光体育App,IMEICode 就长期有效,每天鼠标一点就跑完了
后来更新了 GUI 版 + 批量跑,稍微友好一点,请到 GitHub 自取。
About
Aipao 本项目开源 Author: LiaoGuoYin
核心 API 出自 zyc199847 的逆向成果,我只是搬砖写了个半吊子脚本。
如果对原理和拓展有兴趣可以大概看看项目的 issues(其实就是构造并 POST 上传成绩的 HTTP 请求,只是过程不止一步,还有加密
More
实际上我写的非常菜b,在同性交友 gayhub 上,甚至已经有人写出一套 web。在网页上批量添加管理多人 IMEICode,每天服务器自动 crontab,失效就邮箱或微信喵酱推送提醒。
思路很巧妙很骚。但是封装成一套在淘宝接单恰烂钱就有点…(酸
除了 crontab,还给出一个定时任务的思路,Serverless Cloud Function。你甚至都不需要服务器成本,就能让每天按时运行+提醒。想想就很很幸福噢。好了,不说太多了,没我了
Tail
代跑在全国已经烂大街了,本文只是记录,分享个人解决问题的办法,希望和小伙伴交流一二。自行模拟产生的结果概不负责。
拒绝提供技术支持,如果非要问出 bug 怎么办(百香果请记得加冰,奶绿记得加椰果
如果有帮助到你,可以考虑赏一杯 卡布奇诺