📌 这是什么?
Roam(漫游)是一款macOS 原生的 Android 真机定位模拟工具。在 Mac 上画路线、选运动模式, 通过 USB + ADB 将连续变化的 GPS 坐标注入 Android 真机,让手机像真实移动一样持续更新位置。 专注测试闭环:连接 → 创建路线 → 播放 → 诊断 → 安全停止。
区别于消费级"改定位工具",Roam 走 Android 官方 Mock Location API 正道——不隐藏 isMock 标记,
不做反检测对抗,不涉及 root。定位为接近 Xcode Instruments / Apple Maps 的原生工具感。
✨ 核心功能
设备发现与 Companion
自动检测 ADB、列出 USB 连接的 Android 设备,App 内安装/升级 Companion APK,逐项就绪检查。
地图与路线编辑
搜索地点、点击地图添加起终点和途经点,支持删除、拖动。道路规划失败时 fallback 直线连接。
四种运动模式
走路(5 km/h)、跑步(10 km/h)、骑行(20 km/h)、驾车(45 km/h),支持自定义速度。
播放控制
开始、暂停、继续、停止。手机端以 1 Hz 连续注入坐标,手机状态为权威。异常断连自动清理。
实时遥测
当前坐标、速度、方向、精度、已用/剩余时间、进度条、注入状态一目了然。
诊断面板
ADB、USB、Companion、Mock Location、Playback 五项健康检查 + 事件时间线 + 一键复制诊断信息。
🛠️ 技术架构
两段式架构:Mac 控制端(SwiftUI + MapKit)——USB/ADB——Android Companion(Kotlin,调用 LocationManager test provider)。 全程离线,不上传数据、不依赖云服务。ADB 端口转发建立 TCP 长连接,使用长度前缀 JSON 帧协议通信。
🔒 隐私设计
不收集真实位置
所有位置来自你手动创建的路线,Mac 端不读取手机真实 GPS。
全部本地存储
路线和设备信息仅保存在本机,无账号系统、无云端同步。
通道隔离
Companion 仅接受 ADB 端口转发的本地连接,不在 Wi-Fi/LAN 暴露服务。
合规优先
走 Android 官方 Mock Location API,不隐藏 isMock 标记,不做反检测对抗。
