Apple 虚拟定位(WLOC)完整教程:无需尾插,软件层面改定位

本教程整合自以下两篇文章的全部内容:

Apple虚拟定位教程封面横幅

一、方案原理

本方案的核心原理是修订 Apple 网络定位服务返回的坐标,从而实现 iOS 和 App 的网络虚拟定位。

Apple 系统定位并不局限于 GPS,同时还会参考蓝牙、WiFi 热点、信号塔基站位置,位置数据信息供 iOS 和 App 应用调取使用。多维度检测数据提供高精度位置信息,同时避免 GPS 模块无信号或失效导致的定位失败。

Apple 定位原理示意图

二、两种实现方案对比

传统方案:尾插 GPS 模块

市面上所有修订位置定位,必须加装尾插 GPS 模块,同时配合 GPS 软件 App 实现位置定位。

  • 优点:无损加装,无需越狱,即插即用便捷。
  • 缺点:iOS 系统升级无法使用;需购买加装模块。

我爱研究方案:WLOC 模块(修订返回坐标)

通过修订返回的坐标来实现定位,无需任何硬件。

  • 优点:无需越狱,无需尾插,不限制 iOS 系统(测试 iPhone 17 Pro / iOS 26.5.2 进行测试)。
  • 缺点:需要美区 Apple ID,下载代理软件(测试软件 Shadowrocket),需要可用节点。
对比项传统方案(尾插 GPS 模块)本教程方案(WLOC 模块)
实现方式加装尾插 GPS 模块,配合 GPS 软件 App修订 Apple 网络定位服务返回的坐标
是否越狱无需越狱无需越狱
硬件依赖需购买并加装模块无需尾插
系统兼容iOS 升级后失效不限制 iOS 系统(已测试 iPhone 17 Pro / iOS 26.5.2)
必备条件模块 + GPS App美区 Apple ID + Shadowrocket + 可用节点

功能版本:老版本 vs 模块优化版

老版本功能:

  • 模块拦截 Apple 定位并改写
  • 网页选点、拖动定位、搜索地名
  • 储存到设备 / 清除数据
  • 收藏位置
  • 高德 / 苹果 / Google 分享链接解析

模块优化版:

  • 【稳定性】 二进制代码流程优化处理,避免「沙盒有坐标、系统不改位」。
  • 【响应快】 沙盒为空时直接透传真实定位,本地处理;沙盒有坐标直接修改坐标。
  • 【更好用】 推荐使用地图分享成功率 100%,支持快捷键定位。
  • 【更方便】 支持一键快捷定位和自动化。
  • 【网页入口】 新增「环境安装」:模块安装、iOS 定位键、iOS 恢复键,方便首次配置。

三、准备工具(只做一次)

  1. 美区 Apple ID(下载代理软件用):

    美区 Apple ID 账户

  2. Shadowrocket(小火箭,或同类兼容工具):

    Shadowrocket App Store 页面

  3. 可用的代理节点

    可用节点列表

  4. (可选)安装快捷指令:

    • 定位键(写入坐标)
    • 恢复键(清空沙盒,恢复真位置)

四、环境搭建(实操环境搭建环节,只做一次)

前提:已配置小火箭(或同类代理)+ 模块的前提下,修订成指定的坐标。

1. 安装并开启 Shadowrocket

从 App Store 下载并安装 Shadowrocket。

2. 下载配置文件(WLOC 模块)

配置 → 模块 → 右上角 + 号 → 添加配置 URL 下载:

https://raw.githubusercontent.com/hankinsus/wloc/refs/heads/main/modules/wloc.module

配置 → 模块页面

从 URL 下载 wloc.module

3. 安装证书

第一步:生成并安装 CA 证书

配置 → 点击 default.conf 小圆圈!→ HTTPS 解密 → 生成新的 CA 证书 → 安装证书 → 强制安装证书 → 允许

生成新的 CA 证书

强制安装证书

第二步:安装描述文件

设置 → 已下载描述文件 → 一路安装

设置 → 已下载描述文件

描述文件安装完成

第三步:信任证书

设置 → 关于本机 → 证书信任设置 → 开启 Shadowrocket → 继续

证书信任设置(开启完全信任)

证书已系统信任

4. 开启 HTTPS 解密

配置 → 点击 default.conf 小圆圈!→ HTTPS 解密 → 开启 HTTPS 解密 → 打勾

开启 HTTPS 解密(MitM)

5. 开启节点

全局路由 → 勾选配置 → 返回 → 开启火箭

全局路由 → 勾选配置

首页开启火箭,VPN 已连接

⚠️ 注意:模块未加载或 MITM 未开启时,写入和改位都不会生效。

五、安装快捷指令

1. 添加快捷定位(定位键)

点击链接添加定位键快捷指令(写入坐标):

https://www.icloud.com/shortcuts/2a811c3bac0e4694b1875ae45b26ab0d

WLOC 设置位置快捷指令

2. 添加恢复定位(恢复键)

点击链接添加恢复键快捷指令(清空沙盒,恢复真位置):

https://www.icloud.com/shortcuts/9092b1a576cf4b7c8bc0dd931ba512a6

快捷指令列表:设置位置 + 恢复定位

六、日常怎么用(推荐地图分享)

方式 A:网页选点(最直观)

  1. 打开 WLOC 虚拟定位网页
  2. 地图上点选 / 拖动大头针 / 搜索地名。
  3. 点「储存到设备」。
  4. 打开或刷新需要定位的 App(必要时开关一次定位权限)。

GitHub 官方使用流程(补充):

  • 订阅模块并启用 MITM
  • 打开在线选点页面(公共 Worker,建议添加到主屏幕)
  • 地图选位置 / 搜索地名 / 粘贴地图链接
  • 点击「储存到设备」
  • 下次 Apple 定位触发时自动生效
  • 支持 Apple Maps / Google Maps / 高德 / 百度 / 坐标文本 链接解析

方式 B:高德 / Apple 地图分享(成功率通常最好)

  1. 高德里选好点 → 分享 → 在「更多」里找到 WLOC 设置位置 → 点击。
  2. 等待提示写入成功 → 关闭定位 → 开启定位
  3. 再打开目标 App 看定位。

高德分享 → WLOC 设置位置

关闭/开启定位后,Apple 天气预报显示定位地址

方式 C:直接存坐标(效率高可自动化)

  • 已有经纬度时,用「直接存储」类快捷指令写入。
  • 适合精确数值,部分场景成功率略低于高德分享。

方式 D:自动化定位

方式:通过 Apple 快捷方式实现。

  1. 配置小火箭使用场景。
  2. 配置 Apple 快捷方式 + 调用小火箭使用场景。

自动化示例:

七、恢复真实定位

使用以下任一方式:

  • 运行恢复键快捷指令;或
  • 在 WLOC 网页点击「清除数据」。

沙盒清空后,模块会透传,不再改定位。

恢复定位后,Apple 天气预报恢复真实定位

八、适用范围与注意事项

适用:需要临时改定位、测试、演示等场景。

可靠性:室内、地下室、室外 GPS 或基站信号弱等场景。

不保证:室外强 GPS、且与基站位置近的场景,有效使用。

说明:本教程对应模块优化版。相对老版本:统一沙盒写入、无数据透传、强化对 Apple 定位接口的二进制改包,日常推荐「网页选点」或「高德分享 + 快捷指令」。不支持依赖 Google 短链自动解析;恢复定位请用恢复键或网页清除数据。

iOS 26/27 及更高版本注意事项

Apple 从 iOS 26 开始大幅强化了 locationd 的定位缓存机制,系统会将之前获取的真实定位结果缓存在内存中并长时间复用。这意味着安装模块或切换目标坐标后,即使脚本已成功修改 WLOC 响应(日志显示「已修改」),系统仍可能继续使用缓存中的旧坐标,导致定位看起来没有变化。

解决方法:重启设备。 重启会清空 locationd 的内存缓存,系统重新发起 WLOC 请求时会拿到修改后的坐标。飞行模式开关、关闭定位服务等方式在 iOS 26+ 上无法清除此缓存,必须重启。iOS 15~18 通常不需要重启即可生效。

高版本系统推荐操作流程(成功率最高):

方法一:

  1. 先在选点页面选好需要修改的定位并储存到设备。
  2. 开飞行模式 → 关闭定位服务 → 重启设备。
  3. 关闭飞行模式(WiFi 也要关)→ 连接代理工具(确认 VPN 图标出现)→ 打开定位服务。
  4. 打开地图验证。

方法二:

  1. 关闭定位服务。
  2. 在选点页面选好位置并储存到设备。
  3. 打开定位服务 → 弹出「允许访问位置信息」时选择**「下次询问或在我共享时」**。
  4. 打开地图验证。

九、相关链接