如何快速上手 FakeLocation:安卓应用级虚拟定位完整指南
如何快速上手 FakeLocation:安卓应用级虚拟定位完整指南
【免费下载链接】FakeLocationXposed module to mock locations per app.项目地址: https://gitcode.com/gh_mirrors/fak/FakeLocation
签到类 App 要显示公司在岗,导航 App 又要真实坐标,开系统“模拟位置”权限会让整机都造假。FakeLocation 是一款免费的 Xposed 模块(Xposed 是让应用注入到其他应用内部运行的框架),它按应用分别模拟位置:只有你勾选过的应用看到虚拟坐标,手机其余部分照常获取真实 GPS,也不需要开启模拟位置权限。
📋 开始前的检查清单:设备要求与框架依赖
| 条件 | 要求 | 不满足会怎样 |
|---|---|---|
| Xposed 系框架 | 已安装 Xposed Installer、LSPosed 等任意衍生框架 | 模块无法加载,打开应用会提示“未激活”,所有设置无效 |
| 系统版本 | Android 4.3 及以上(官方更新日志显示对 Android 7 为部分支持) | 新系统上 Hook 点可能缺失,定位请求拦不到 |
| 激活后重启 | 在框架管理器勾选模块后必须重启设备 | 模块只在启动时生效,设置能保存但不产生作用 |
| 基础权限 | 授予存储权限(用于保存设置与崩溃日志) | 设置无法保存,出问题时无日志可查 |
📦 安装并启用 Xposed 模块的 4 个步骤
- 获取程序:直接安装现成的 APK,或克隆源码自行构建:
git clone https://gitcode.com/gh_mirrors/fak/FakeLocation - 将 APK 传到设备上并安装。
- 打开 Xposed 框架管理器,在模块列表中找到 FakeLocation 并勾选。
- 重启设备。
判断标准:重启后打开 FakeLocation,能完整显示已安装应用列表、不再弹出“模块未激活”的提示,并且点进任意应用的设置页都能正常回显数据,就说明装好了。
📍 第一次位置配置的完整流程:选应用、定位置、保存生效
第一步:选应用。在主界面顶部搜索框输入应用名称或包名(“com.”开头的那串字符串),从列表里点中目标应用,进入它的专属设置页。
第二步:定位置。在 Location Settings 页面打开 “GPS Mocking” 开关,再点 “Select” 进入地图选点。默认使用高德地图,也可以在设置里改为 Google 地图;你可以直接在地图上点击落点,或搜索关键词后从结果中选择,最后点右下角对勾确认。已知坐标时直接在经纬度输入框里填写即可;想快速试试效果,点 “FEELING LUCKY” 会随机给你一个位置。
第三步:保存生效。返回设置页保存,界面会提示 “Settings saved”。随后打开目标应用观察坐标变化;如果没变,多半是位置被应用缓存了,等一会儿或强制停止后重新打开应用即可。
🧩 进阶能力:模板、基站与悬浮窗怎么用
双模拟:GPS + 基站。部分应用不只信 GPS,还会结合基站信息(应用判断你所在区域的另一类信号)做交叉验证。在同一设置页打开 “Cell info Mocking” 开关,填入 MCC(国家代码)、MNC(运营商代码)、LAC/TAC(位置区码)、CID(小区标识)五个参数,基站类型建议与手机实际网络类型保持一致;页面里自带 OpenCellID 和 Cellocation 两个入口可查真实基站参数。注意基站参数要与 GPS 坐标同区域,两套信息互相矛盾反而更显眼。
应用级位置设置页:GPS 模拟与基站模拟双配置
快捷模板。在几个固定地点之间反复切换时,每次手敲坐标很麻烦。在应用设置页打开 “Template” 菜单,把当前 GPS 或基站参数保存为模板;下次切换时打开底部 “Shortcut” 面板,选对应模板一键填入。“Recent” 一栏会自动记录最近用过的坐标,方便回退。
悬浮窗轨迹。跑步、导航类应用在意“移动”而不只是“停在哪”。先在应用的 GPS 设置里点 “Connect” 把应用关联到悬浮窗,再从主界面 “Toggle Overlay” 入口呼出悬浮窗,用摇杆控制方向与力度,位置会按角度和强度持续更新。注意在设置里可调整 “GPS location update interval” 和最小/最大移动速度:间隔设得太小会影响设备性能,小于应用请求的定位频率时更新还会被应用丢弃;担心悬浮窗服务在内存紧张时被系统杀掉,可开启 “Foreground service”。
🔧 虚拟位置设置不生效的排查表
| 现象 | 可能原因 | 解决动作 |
|---|---|---|
| 设置已保存,目标应用位置不变 | 位置信息被应用缓存 | 强制停止并重新打开应用;仅开 GPS 时若出现“正在定位”,到应用设置页点 “Notify” 手动推一次更新 |
| 打开应用提示模块未激活 | 框架管理器未勾选,或更新模块后没重启 | 回到 Xposed 框架管理器勾选模块并重启设备 |
| 依赖 Google 服务的应用拿不到虚拟位置 | 它走 Google Play 服务的定位接口取坐标 | 在设置中开启 “Google Service API support”,然后在该应用的专属设置页里配位置,无需单独配置 com.google.android.gms |
| 微信类应用打不开或行为异常 | 应用使用自研定位 SDK | 在设置的 “Experimental” 分区启用 “Tencent Location SDK support”,启用后需要重启 |
| 国内地图上标记点与真实道路偏移 | 国内坐标系偏移 | 在设置的 “Locate” 分区开启 “Offset correction”,对国内坐标做偏移修正 |
🎯 按使用目标给建议:隐私保护与开发测试
隐私保护型用户
- 只对少数敏感应用(社交、购物类)开启开关,导航与支付类应用保持真实定位。
- 虚拟位置选得离真实位置远一些,不用的时段随手关掉 “GPS Mocking” 开关,避免长期挂着。
- 不要动系统应用:设置页有明确提示,改动系统应用的位置可能导致不可预期的行为。
开发测试型用户
- 先开启设置里的 “Verbose log” 再复现问题,配合 Xposed 框架里的日志自查,能少走很多弯路。
- 把多个测试点存成模板,快速切换对比应用在不同坐标下的表现。
- 被测应用如果走 GMS 或腾讯 SDK 取位置,先把对应支持开关打开,确保覆盖全部取位路径。
需要修改或扩展时,地图搜索组件源码在mapsearchbar/src/main/java/com/rong/library/widget/mapsearchbar/,完整的中文说明见README.md。FakeLocation 在不碰系统模拟位置权限的前提下,给每个应用提供独立的位置沙盒。请把它用在隐私保护、区域测试、开发调试这类场景里,并遵守当地法律与各平台的服务条款。
【免费下载链接】FakeLocationXposed module to mock locations per app.项目地址: https://gitcode.com/gh_mirrors/fak/FakeLocation
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
