sing-box 安卓教程:SFA 安装、订阅导入与无法上网排查

更新于 2026-10-24 · xn--kbtz2zn3ab56c.shop

简答:sing-box 安卓版通常指官方 SFA 客户端,不是 sing-box Core 本身。先从官方渠道安装 SFA,再导入 sing-box JSON 或远程配置;如果 VPN 已连接但打不开网页,按配置格式、日志、节点、DNS 和 Android 后台限制依次排查。

定义:SFA 是 sing-box 官方 Android 图形客户端,用来管理本地或远程 sing-box 配置,并通过 Android VpnService 提供 TUN 功能。

先看配置格式:不同订阅不能直接混用

如果你已经拿到订阅地址,先不要急着粘贴。SFA 管理的是 sing-box 配置文件;官方文档将配置分为 Local Profile 和 Remote Profile,远程配置以 URL 作为更新来源。Clash YAML、通用 Base64 节点列表、单节点 URI 和完整 sing-box JSON 并不是同一种格式。

格式能否直接导入 SFA正确处理方式
完整 sing-box JSON可以作为 Local 配置导入文件或粘贴内容。
远程 sing-box JSON URL可以在 New Profile 中创建 Remote,填写 HTTPS 配置地址。
sing-box://import-remote-profile 链接可以点击链接后交给 SFA,检查 URL 和配置名称再保存。
Clash YAML不能直接当作 sing-box JSON让配置提供方生成 sing-box 格式,或改用支持该格式的客户端。
Base64 节点订阅通常不能直接导入确认服务方是否提供 sing-box 远程配置,而不是只提供节点列表。
单节点 URI不能直接当完整配置使用能解析该 URI 的客户端,或转换为完整 sing-box JSON。

官方客户端规范还定义了远程配置导入链接格式:sing-box://import-remote-profile?url=urlEncodedURL#urlEncodedName。链接中的 URL 需要经过编码,手动修改时不要删掉协议头或参数。官方图形客户端配置说明

下载安装:先核验 SFA,再选择 APK 架构

sing-box Core 是负责处理配置和网络连接的核心程序,SFA 是 Android 图形客户端;两者不是同一个安装包。NekoBox 是使用 sing-box 的第三方 Android 客户端,界面、配置兼容范围和维护方与 SFA 不同。搜索结果中看到“sing-box 安卓版”时,先确认应用名称、发布组织和下载地址,避免把第三方 APK 当成官方 SFA。

  1. 优先打开 sing-box 官方 Android 页面,从其中列出的 Play Store、GitHub Releases 或 F-Droid 入口进入。
  2. 如果使用 GitHub Releases,进入具体发布页后,只下载名称以 SFA- 开头的 APK,不要把桌面端压缩包或 Core 二进制当作 Android 图形客户端。
  3. 普通新款手机通常优先检查 arm64-v8a;旧设备可能需要 armeabi-v7a。无法判断架构时,可选择官方发布页提供的 universal 包,但文件通常更大。
  4. 安装前检查发布者、文件名和来源域名。不要从搜索广告、网盘转存或陌生短链接下载 APK。
  5. 若发布页提供 SHA256,校验对象必须是刚下载的原始 APK,而不是解压后的文件。Windows 可使用 certutil -hashfile 文件名.apk SHA256;macOS 可使用 shasum -a 256 文件名.apk。

截至2026年10月24日,Releases 标记为 Latest 的是 1.14.3;如果你稍后打开页面看到不同的 Latest 标记,应以发布页当前固定版本和资产列表为准。官方 Android 客户端要求 Android 5.0 或更高版本。官方 Android 客户端页面

首次配置:导入远程订阅、本地 JSON 和一键链接

方式一:Remote 远程配置

  1. 打开 SFA,进入 Profiles 或配置列表,点击 New Profile。
  2. 选择 Remote,填写配置提供方给出的 sing-box JSON 远程地址。
  3. 填写名称并保存,回到配置列表执行更新。
  4. 确认配置能显示有效内容后,再进入 Dashboard 启动。

方式二:Local 本地 JSON

  1. 将完整 sing-box JSON 文件保存到手机,或使用文件分享功能发送给 SFA。
  2. 在 New Profile 中选择 Local 或本地文件导入。
  3. 保存后打开配置内容检查是否存在有效的出站、路由和 TUN 设置。

方式三:二维码或 sing-box 导入链接

如果服务方提供二维码或 sing-box://import-remote-profile 链接,使用系统浏览器或二维码扫描器打开,选择 SFA 接收。首次导入时要核对配置 URL,避免把不认识的地址保存为远程配置。导入后仍需在 Profiles 中确认名称、更新时间和内容。

配置解析失败时,不要先反复点击启动。先判断返回内容是不是 JSON:如果浏览器打开后显示 HTML 登录页、错误页、空白页或一段 Base64 文本,SFA 通常无法按完整 sing-box 配置解析。此时应向配置提供方索要 sing-box JSON 或正确的远程配置地址。

启动与验证:VPN 图标出现不等于访问已经正常

  1. 在 Profiles 中选中刚导入的配置,确认配置状态没有解析错误。
  2. 进入 Dashboard,点击启动。Android 弹出 VPN 权限确认时选择允许;如果系统已有其他 VPN、企业网络或始终开启的 VPN,先暂时关闭冲突项。
  3. 如果配置中含有 Selector 或 URLTest 出站,进入 Groups 选择具体线路。没有这些出站组时,Groups 为空并不一定是故障,可能只是配置没有声明可切换的组。
  4. 观察 Logs 或 Dashboard 中的连接记录,确认是否出现 DNS 错误、连接超时、TLS 错误或出站选择失败。
  5. 打开一个出口 IP 检查页面,再打开原本无法访问的目标网站。两者都正常,才说明基础连接和目标访问分别通过了验证。

SFA 在需要 TUN 时通过 Android VpnService 提供非特权 TUN;Android 系统会显示 VPN 图标,但图标本身只能说明 VPN 服务已建立,不能证明节点、DNS、路由和目标网站都正常。分应用代理也可能只让部分应用进入配置,需检查 SFA 的应用选择设置。官方 Android 客户端功能说明

按顺序排查:配置解析失败、Timeout、VPN 有图标但无法上网

现象优先检查处理方法
配置解析失败格式和返回内容确认是完整 sing-box JSON;用浏览器检查远程地址是否返回登录页、错误页或空内容。
配置导入成功但没有节点出站和策略组检查配置是否包含有效 outbound;Groups 只有在存在 Selector 或 URLTest 等组出站时才有可选内容。
节点 Timeout网络、地址、端口、TLS先切换另一条线路,再检查手机当前 Wi-Fi 或移动网络;不要同时修改多个参数。
VPN 有图标但网页打不开日志、DNS 和路由看日志是否命中出站,关闭分应用代理测试全局范围,再分别测试出口 IP 和目标网站。
只有某个应用打不开分应用代理检查该应用是否被排除,或先关闭应用分流后重测。
锁屏后断开或后台停止电池优化和后台限制将 SFA 设为允许后台运行,关闭系统对该应用的电池限制;不同手机品牌入口名称不同。

建议始终遵循“订阅格式—配置解析—VPN 权限—节点连通—DNS 与分流—后台限制”的顺序。这样可以避免在节点还未连通时反复修改 DNS,或在配置格式错误时误判为线路问题。

SFA、sing-box Core 和第三方客户端怎么区分

SFA:官方 Android 图形客户端,负责配置管理、启动服务、VPN 权限和 Android 平台功能。

sing-box Core:负责读取 JSON 配置并执行入站、出站、DNS、路由和 TUN 等功能,本身不等同于完整的 Android 图形界面。

NekoBox:第三方 Android 客户端,项目说明显示其使用 sing-box,但它有自己的界面和配置处理逻辑;遇到导入失败时,应按照实际使用的客户端查对应文档,不要把 SFA 的菜单名称套到其他应用上。NekoBox 项目仓库说明

如果你的目标只是把一条 sing-box 远程配置导入 Android,优先选择发布组织和下载渠道都能在官方页面核对的 SFA;如果手里只有 Clash YAML 或通用 Base64 订阅,则先向配置提供方确认是否存在 sing-box 格式,不能因为链接末尾是“订阅”就假定所有客户端都兼容。

常见问题

sing-box 安卓版和 SFA 是什么关系?

sing-box 是核心项目,SFA 是官方 Android 图形客户端,用于管理本地或远程 sing-box 配置并调用 Android VPN 功能。第三方客户端即使使用 sing-box 核心,菜单和兼容格式也可能不同。

为什么 Clash 订阅不能直接导入 SFA?

Clash YAML 是另一种配置格式,通用 Base64 也通常只是节点列表,不等于完整 sing-box JSON。应向配置提供方索取 sing-box 格式,或使用支持原格式的客户端。

SFA 显示 VPN 图标,但为什么还是打不开网页?

先看 Logs 是否有 DNS、连接超时或出站选择错误,再检查 Groups 是否选中有效线路、分应用代理是否排除了当前应用,最后关闭电池限制并分别验证出口 IP 和目标网站。

Groups 页面为空是不是配置导入失败?

不一定。Groups 通常依赖配置中存在 Selector 或 URLTest 等组出站;如果配置只有单个出站,Groups 为空可能是正常表现。

远程配置更新失败应该先查什么?

先在浏览器打开远程地址,确认返回的是完整 JSON,而不是登录页、错误页或空内容;再检查 URL 是否过期、手机网络是否可访问,以及配置提供方是否限制了请求。

相关阅读

参考资料

  1. sing-box for Android 官方文档
  2. sing-box 固定发布页
  3. sing-box 图形客户端配置说明
  4. sing-box Android 客户端功能说明
  5. sing-box for Android 项目 README
  6. github.com