先区分 VPN 接管、规则分流与后台存活

Android 上的 Clash Meta for Android 通常需要经过三层设置:系统允许建立 VPN 接口,客户端确定哪些应用进入接口,内核再按规则决定连接出口。省电策略负责的是客户端能否持续运行,不负责选择节点。这三层相互关联,但排障时应分开检查。

Clash Meta 与 Mihomo 有内核沿革关系,但不能仅凭客户端名称判断内置内核的版本与功能。先在客户端的「关于」页面记录应用版本,再从启动日志确认内核版本。不同构建的菜单译名可能不同;本文以常见的「设置」→「网络」入口说明接管与访问控制,系统设置路径则注明 Android 或厂商系统版本范围。

设置层处理的问题验证依据
VpnService 授权允许客户端创建虚拟网络接口系统 VPN 页面、客户端运行状态
分应用访问控制决定哪些应用进入 VPN 接口应用选择列表、连接页是否出现请求
内核规则与策略组决定接管后的流量直连或走代理连接详情中的命中规则与出口
电池与后台权限降低熄屏后进程被限制的概率熄屏前后服务状态与日志时间

VpnService 授权:弹窗允许的是什么

首次启动代理服务时,Android 会显示 VPN 连接请求,提示应用可能监控网络流量。确认后,系统允许客户端创建本地 VPN 接口并处理进入接口的数据包。这不是订阅购买确认,也不是把手机连接到一个由 Android 自动提供的远程 VPN 服务器。远程出口仍由订阅中的节点、策略组选择和规则共同决定。

首次连接按这个顺序检查

  1. 导入可信来源的订阅,确认配置已选中,代理页能看到策略组与节点。
  2. 启动客户端服务,核对系统授权弹窗中的应用名称,再确认连接请求。
  3. 进入 Android「设置」→「网络和互联网」→「VPN」,检查当前连接的应用。厂商系统可在设置搜索框搜索「VPN」。
  4. 打开浏览器请求一个此前未加载的页面,再看客户端连接页与日志,而不只观察状态栏钥匙图标。

VPN 图标说明系统存在 VPN 连接,不说明节点可用、DNS 正常或网页已经走到预期出口。HTTPS 内容通常仍由应用与网站之间的 TLS 加密保护;不过,接管流量的客户端及远端服务可能接触连接目标、流量时间等信息,因此安装来源和订阅提供方都需要单独判断。

其他 VPN、常驻 VPN 与阻止绕过

同一 Android 用户或资料空间通常只能有一个活动的 VpnService。另一款 VPN、使用本地 VPN 的防火墙或过滤工具启动后,可能替换当前连接。工作资料空间还有独立管理策略,不能直接套用个人空间的结论。

系统 VPN 详情可能提供「始终开启 VPN」以及「阻止未使用 VPN 的连接」。后者会改变故障表现:服务停止时,网络可能直接不可用;分应用排除的应用也可能被阻断,而不是自动恢复普通直连。先完成基本连通和分应用测试,再决定是否启用这些选项。

分应用代理:先选接管范围,再检查规则

分应用访问控制通常提供「仅允许选中的应用」与「绕过选中的应用」两种思路。前者适合只让少量应用进入 VPN;后者适合大多数应用需要接管、少量应用需要排除的情况。列表里的勾选含义取决于当前模式,不能只看有没有打勾。

以浏览器和地图应用为例

  1. 进入客户端「设置」→「网络」,查找「访问控制模式」与应用选择入口;部分构建合并显示为「访问控制」。
  2. 若目标是只接管浏览器,选择仅允许所选应用的模式,再勾选浏览器。不要同时把地图也加入。
  3. 保存设置,停止并重新启动客户端服务。应用范围往往需要重建 VPN 接口才能生效。
  4. 关闭浏览器和地图已有的网络会话,再分别发起新请求。必要时结束目标应用后重新打开。
  5. 在连接页检查浏览器请求是否出现。地图未进入 VPN 时,通常不会出现在客户端的连接记录里。

「进入 VPN」不等于「使用代理节点」。浏览器已被接管后,访问的域名仍可能命中 DIRECT 规则而直连。相反,被排除在 VPN 外的应用,不会再由该客户端的域名规则决定出口。只有先确认请求进入内核,继续检查规则和策略组才有意义。

应用列表和连接记录的常见误读

  • 显示名称相同:测试版、正式版和工作资料中的应用可能不是同一安装实例。能查看包名时,应一并核对。
  • 应用内跳转:应用调用外部浏览器打开链接后,实际发起连接的可能是浏览器,而不是原应用。
  • 旧连接仍在:修改列表后,旧会话可能暂时沿用原有路径。用新请求验证,不要仅刷新缓存页面。
  • 系统组件参与:下载、推送和登录流程有时涉及其他进程。不要为了补齐一次连接记录就批量放行全部系统应用。

建议先用一个浏览器完成最小测试,再逐个增加应用。这样一旦出现登录异常、局域网访问失败或应用无网络,能够明确对应哪一次修改。

省电白名单:按系统分别设置

后台断连常发生在熄屏、进入省电模式或长时间不操作之后。允许后台运行可以降低系统限制服务的概率,但不能修复失效节点、过期订阅或 Wi-Fi 切换引起的连接中断。以下路径以列出的系统版本为参考;地区、机型和系统更新可能改变名称,找不到时先长按应用图标进入「应用信息」。

系统参考电池与后台入口建议操作
Pixel / Android 14 设置 → 应用 → 查看所有应用 → Clash Meta for Android → 应用电池用量 选择「不受限制」,并确认允许后台使用
三星 / One UI 6 设置 → 应用程序 → Clash Meta for Android → 电池 选择「不受限制」;再到「电池」→「后台使用限制」检查深度休眠列表
小米 / HyperOS 1 应用信息 → 省电策略;设置 → 应用设置 → 授权管理 → 自启动管理 省电策略选择「无限制」;需要重启后恢复时,再允许自启动
OPPO / ColorOS 14 应用信息 → 耗电管理;设置 → 应用 → 自启动 允许后台活动,并按需允许自启动
华为 / EMUI 12 设置 → 应用和服务 → 应用启动管理 关闭该应用的自动管理,按需开启允许自启动、关联启动与后台活动

电池权限之外还要检查两项

  • 后台移动数据:打开应用信息中的流量或移动数据设置,确认允许后台使用。启用「流量节省程序」时,按需为客户端允许不受限数据使用。
  • 服务通知:Android 13 及以上应按需允许通知,便于观察运行状态。通知权限不等于后台保活权限,拒绝通知也不必然意味着前台服务无法启动。

部分厂商支持在最近任务界面锁定应用卡片。它可以减少手动清理时被移除的机会,但不能替代电池策略。Android「强行停止」的影响也比划走卡片更强;强行停止后,应手动重新打开客户端并启动服务,不要期待白名单自动恢复连接。

熄屏断连的分步验证方法

测试时把「服务退出」和「服务仍在但请求失败」分开记录。下面是一组可复现的检查步骤,不是设备实测结论;测试时长用于统一观察条件,不代表所有系统会在同一时间限制后台。

  1. 建立基线:固定使用同一个 Wi-Fi、同一个节点与规则模式。记录开始时间、应用版本、内核版本以及系统省电模式是否开启。
  2. 亮屏测试 2 分钟:在浏览器发起新请求,查看连接详情中的规则和出口。此时就失败,应先排查配置,而不是调整白名单。
  3. 熄屏测试 10 分钟:保持客户端服务运行。唤醒后先看服务是否仍处于运行状态,再请求新页面,并检查这段时间的日志。
  4. 切网单独测试:亮屏状态下从 Wi-Fi 切到移动数据,等待网络稳定后重试。不要把切网和熄屏同时作为一个变量。
  5. 单项修改后复测:只放宽该应用的电池限制,重复 10 分钟测试;通过后再做一次 30 分钟观察。

按现象定位下一步

现象优先检查下一步
VPN 状态消失,服务停止后台限制、强行停止、其他 VPN 替换检查电池策略与系统 VPN 页面
服务正常,连接中出现 DNS 错误运行配置中的 DNS、系统私人 DNS、当前网络保留日志,每次只改一个 DNS 相关设置
仅一个应用无法联网访问控制模式、应用选择、系统阻止绕过选项重建 VPN 接口后重新测试该应用
请求进入内核但代理连接超时节点、策略组、订阅状态与网络可达性选择另一个已验证节点,比较连接详情

若怀疑系统私人 DNS 与客户端解析路径不匹配,可以记录原设置,再在「设置」→「网络和互联网」→「私人 DNS」中临时切为「自动」做对照。一次测试只能说明这组设置下的结果,不能据此认定所有私人 DNS 都会冲突。厂商系统可通过设置搜索定位该入口。

保持连接的最小配置清单

稳定的手机端配置不依赖把所有开关都打开。先保证订阅有效、策略组可用,再确认 VpnService 授权、应用接管范围和后台权限。健康检查过密也可能增加唤醒与网络活动;如果配置含有自动测速策略组,应查看其实际检查间隔和提供方要求,而不是为了保活持续提高测速频率。

  • 系统 VPN 页面显示的是预期客户端,没有被另一款本地 VPN 工具替换。
  • 明确采用仅允许模式还是绕过模式,修改应用列表后已重新启动服务。
  • 在连接详情中确认命中规则和最终出口,不把 VPN 图标当作代理成功的证据。
  • 对客户端单独允许后台运行,按需要配置自启动、后台数据与通知。
  • 分别通过亮屏、熄屏、Wi-Fi 切移动数据三组测试,再考虑始终开启 VPN 等额外策略。

向他人求助时,提供系统版本、客户端版本、断连时间和脱敏日志即可。订阅完整链接、节点密码与访问令牌不应出现在截图或公开记录中。把问题描述为「熄屏 10 分钟后服务停止」或「服务仍在但 DNS 超时」,通常比「已连接却不能用」更容易确定排查方向。