跳至内容
Android 系统 VPN

Android 系统 VPN

入口:高级 → VPN 隧道 → Android 系统 VPN。

选择模式

模式 行为
所有应用 所有适用应用进入隧道
仅所选应用 仅选择的应用进入隧道
除所选应用外的所有应用 选中的应用绕过隧道

包含与排除列表分开存储。切换模式不会覆盖另一套选择。

选择应用

进入应用选择页,按名称或包名搜索并勾选。应用图标帮助区分名称相近的程序。列表只在本地用于按应用分流,不上传给 OneXray。

“仅所选应用”至少需要一个已安装应用。空允许列表不会静默改为所有应用。

保存后应用选择;VPN 正在运行时需要重新连接。按应用选择决定谁进入隧道,之后由智能/自定义路由处理隧道内流量。

权限与系统入口

完成首次设置、进入主界面后检查 VPN 状态,并请求缺失的权限。Android 17 及以上还需要适用的局域网权限。拒绝授权不阻止浏览 App,可以从连接页重试;回到前台只刷新状态,不反复弹出授权框。

可通过 App、前台通知、快捷设置磁贴或应用图标快捷操作控制 VPN。相机权限只在使用扫码时单独请求。

外部自动化

进入本页的“外部自动化”,开启“允许外部自动化”,然后复制 Token。该功能默认关闭,只支持启动和停止 VPN;不提供切换节点、订阅更新或状态查询广播。它不是桌面端的 HTTP API。

先在 OneXray 内完成 VPN 和适用的局域网授权,并正常连接一次。自动化使用最近生成的完整启动配置,而不是重新读取数据库中的选择;修改节点或路由后,请先从 App 连接一次。最近生成的配置也不保证曾成功连接。

广播参数

所有工具都应明确指定 Package 和 Class。START、STOP 均要求同一个字符串 Token;不要把 Token 放进 HTTP Header。

Target: Broadcast Receiver
Package: net.yuandev.onexray
Class: net.yuandev.onexray.automation.VpnAutomationReceiver
START Action: net.yuandev.onexray.action.START_VPN
STOP Action: net.yuandev.onexray.action.STOP_VPN
Extra key: token
Extra type: String

Automate

添加 Broadcast send 块,填写上述 Package、Receiver class。在 Action 的表达式模式(fx)中填写带引号的启动或停止 Action,例如:

"net.yuandev.onexray.action.START_VPN"

Extras 使用字典,把 YOUR_TOKEN 替换为从 App 复制的完整值:

{"token": "YOUR_TOKEN"}

其余字段留空。可在前面连接 Delay 块,返回桌面后检查后台触发。已在 Android API 37 上使用 Automate 1.53.2 验证后台 START/STOP、错误 Token 和重置后的旧值拒绝;其他 Android 版本、厂商省电策略仍需分别验证。Automate 官方说明。

Tasker

使用 Send Intent,Target 选择 Broadcast Receiver,填写上表的 Action、Package 和 Class。Extra 填写 token:YOUR_TOKEN,或先将 Token 存入变量,再填写 token:%OneXrayToken;不要增加引号或空格。其他字段留空。Token 的 ox_ 前缀可避免被解析成数字。本轮未进行 Tasker 实机联调,参数方式依据官方文档。

MacroDroid

使用 Send Intent,Target 选择 Broadcast,填写上表的 Action、Package 和 Class。在 Extras 中添加名为 token 的 String,值使用复制的 Token,或通过工具的变量选择器插入已保存的字符串变量。其他字段留空。本轮未进行 MacroDroid 实机联调;不同版本的字段名称可能不同,务必核对发送类型和字符串 Extra。

Token 与失败处理

  • 关闭功能会保留 Token,再开启不必修改任务;主动重置后必须更新所有任务中的 Token。关闭或重置不会停止当前 VPN。
  • Token 仅属于本设备,不进入连接配置或备份。清除 App 数据、系统清除数据或卸载后需要重新授权;恢复连接备份保留本设备的授权。分享流程前移除真实 Token,普通工具变量不是安全密码库。
  • 重复 START 不重复启动内核;STOP 可以取消正在启动的 VPN,不要求启动文件或启动权限仍然有效。
  • 缺少配置、权限或资源时不会下载兜底,也不会自动打开 OneXray。查看失败通知并点击它处理;通知被禁用时检查系统通知权限及 App 状态。
  • 错误、缺失或类型不正确的 Token,以及功能关闭时的请求会被静默忽略。工具显示“已发送”不等于 VPN 已连接;请核对 VPN 通知、Widget 或 App。
  • 清理或恢复数据期间暂停接收 START,仍允许已授权 STOP。系统强制停止、重启后未解锁、Doze、厂商后台限制或其他 always-on/lockdown VPN 可能影响执行;本功能不绕过这些限制。
最后更新于