ANDROID · CMFA

Clash Android 客户端配置教程

Clash Meta for Android 移动端

📱 Android 14 VPNService 权限收紧后,CMFA 全局代理的误代理率在生产环境达 18%。采用 Work Profile 隔离 + 分应用 whitelist 策略后,误代理率可降至 2% 以下。本文记录与桌面共用 rule-providers 的同步方案、QR 配置下发安全流程。客户端获取见 运维版客户端清单

架构:VpnService 而非 root

CMFA 不依赖 root。启动时调用 VpnService.Builder 建立 TUN 接口,由内核 mihomo 处理 IP 包。Android 14+ 对 VPN 通知、前台服务类型审查更严,需保持 CMFA 在「受电池优化豁免」列表中,避免后台被杀。

Profile 与配置结构

CMFA 支持多 Profile,每个对应一份 config.yaml 或远程 URL。企业建议:

规则写法与桌面 mihomo 一致,参见 规则工程文。注意移动端可适当裁剪 GEOSITE 类别以节省内存与电量。

分应用代理(Per-App Proxy)

白名单模式

设置 → 访问控制 → 仅选中需走代理的应用(如浏览器、Slack)。银行类 App 不勾选,避免风控触发。此模式不走全局 TUN,未选中应用直连。

黑名单模式

全局代理,排除国内 App(微信、支付宝)。需维护包名列表,系统更新后可能变化。

# 日志中查看包名
adb logcat | grep "ClashMeta"

rule-providers 远程同步

与 Linux 网关共用同一份 rule-provider URL,保证分流逻辑一致:

rule-providers:
  corp-direct:
    type: http
    behavior: classical
    url: https://rules.corp.example/direct.yaml
    path: ./rules/corp-direct.yaml
    interval: 43200

CMFA 在 Wi-Fi 下按 interval 更新;蜂窝网络可在设置中关闭「移动数据下更新规则」以省流量。

Work Profile 部署

通过 MDM(如 Google Workspace)在工作资料夹安装 CMFA,与个人空间隔离。配置 URL 指向内网 HTTPS,证书需用户信任企业 CA。工作资料夹内应用默认走工作 VPN,个人微信不受影响。

🔐 配置 URL 若含 Secret 或订阅 token,必须 HTTPS + 短期 token 轮换。参见 API 与配置安全文

QR 码下发流程

  1. 内网生成一次性配置链接(含 JWT,有效期 15 分钟)
  2. CMFA → 新建 Profile → 扫描二维码
  3. 用户确认后删除 QR 展示页面,防止拍照泄露

勿在公共场合展示含订阅地址的静态 QR。

与桌面协同

同一用户在 Mac 用 Verge TUN、手机用 CMFA 时,建议 rule-providers 同源。出站协议在弱网下的选型见 QUIC 文。内核行为差异见 基准测试(移动端 RSS 通常低 40%)。

常见问题

与其他 VPN 冲突

Android 同时仅允许一个 VpnService。需先断开其他 VPN 再启 CMFA。

分应用失效

确认未开启「始终-on VPN」的其他应用;检查 MIUI/ColorOS 是否额外限制后台。

耗电偏高

降低 url-test 频率;关闭 find-process-mode(Android 上本即 off);使用分应用白名单减少 TUN 流量。

返回 运维专栏 · 首页