四项权限缺一不可。少开任何一项,脚本都会在运行中失败或中途被杀。
无障碍服务
| 用途 | 执行点击、长按、滑动、文本输入;优先通过控件树识别界面元素 |
| 是否必需 | 必需 |
| 失效影响 | 无法执行任何动作,脚本启动即失败 |
开启方式
- 打开「设置 → 无障碍 / 辅助功能」
- 在「已下载的服务」中找到 VsrTap
- 打开开关,系统会弹出风险提示,确认允许
- 部分机型需要额外关闭「电池优化」才不会被回收
云手机重启后无障碍开关通常会被重置。建议在云手机面板中设置「开机自启」,
App 检测到权限失效时会在悬浮球上显示红色告警。
悬浮窗
| 用途 | 显示运行状态条与悬浮控制球,可在游戏画面上方操作暂停 / 停止 / 截图 |
| 是否必需 | 必需(无悬浮窗时脚本仍可运行,但无法随时暂停) |
开启路径:「设置 → 应用 → VsrTap → 显示在其他应用上层 / 悬浮窗」。
状态条默认高度 36dp,位于屏幕顶部,不可点击,触摸会透传给游戏,不会干扰操作。 可设置自动隐藏,无状态变化时收缩为左侧一个小圆点。
屏幕录制(MediaProjection)
| 用途 | 截图供 YOLO / OCR / VL 识别使用 |
| 何时需要 | 游戏使用 SurfaceView 渲染、无障碍读不到控件时自动启用 |
首次启动需要截图的脚本时,系统会弹出录制授权对话框,选择「立即开始」。 授权在设备重启后失效,需要重新确认。
系统提示「将开始截取您的屏幕」属正常授权流程,画面只在设备本地处理,不会上传。
电池优化白名单
| 用途 | 防止后台服务被系统冻结或杀死 |
| 是否必需 | 长期挂机必需 |
开启路径:「设置 → 电池 → 电池优化 → 所有应用 → VsrTap → 不优化」。
部分国产 ROM 还需要额外设置:
- 允许「后台弹出界面」
- 允许「自启动」
- 在最近任务中锁定 VsrTap(下拉卡片加锁)
保活机制
权限齐备后,VsrTap 通过三层机制维持长期运行:
- 前台服务 — 常驻通知栏,提升进程优先级
- 心跳自检 — 定期检查无障碍与录制是否仍可用,失效则告警
- 内存监控 — 内存紧张时自动卸载 VL 模型降级,避免整体被杀
权限自检清单
| 检查项 | 在哪里确认 | 正常状态 |
|---|---|---|
| 无障碍 | 设置 → 无障碍 → VsrTap | 已开启 |
| 悬浮窗 | 设置 → 应用 → VsrTap → 悬浮窗 | 已允许 |
| 屏幕录制 | App 内「我 → 权限状态」 | 已授权 |
| 电池优化 | App 内「我 → 权限状态」 | 已忽略优化 |
App 的「我」页面顶部集中展示四项权限状态,未开启的项会显示「去开启」按钮,可直接跳转系统设置。