狮子云 - 加速你的每一秒

sing-box 安卓订阅配置教程:先辨 JSON,再导入 Remote Profile

更新于 2026-11-01 · shizi.buzz

简答:如果你是在 Android 手机上导入 sing-box 订阅,先不要急着改 DNS 或开启高级模式:第一步用浏览器确认订阅返回的是 JSON 配置;第二步在 sing-box for Android 的配置文件区域添加 Remote Profile,保存后手动更新;第三步启动服务并区分“配置存在”和“实际连接成功”。本文是系列中的 Android 篇,不覆盖 Windows、macOS、iOS 或 Linux 命令行。

定义:sing-box 订阅配置,是把服务提供方生成的远程 sing-box JSON 配置,通过 Remote Profile 加入客户端,再完成更新、启动和出站连接测试。

先做 3 分钟判断:链接、配置、连接不是一回事

本文为第三方使用指南,不代表 sing-box 项目或任何订阅服务官方。本文只讲 Android 上的 sing-box for Android,简称 SFA;如果你使用的是 Windows、macOS、iOS 或 Linux 客户端,请先查看使用指南目录,不要照搬 Android 的菜单路径。

导入前的三段式判断卡
检查阶段你要观察什么通过标准不通过时先做什么
返回内容浏览器打开订阅 URL 后显示什么返回可解析的 sing-box JSON,而不是 HTML、YAML、Base64 或单条分享链接重新复制完整 URL,向订阅提供方确认是否有 sing-box 专用格式
导入结果Remote Profile 是否保存并完成一次手动更新配置可以被客户端读取,且没有明显的截断、错误页或解析错误查看原始返回内容和错误提示,不要只修改文件后缀
启动状态服务是否启动、系统 VPN 是否授权、出站是否能连接服务已启动,并通过实际网页或应用测试确认连接成功先停止其他 VPN,重新授权并只测试一个出站

官方文档说明,sing-box 配置文件使用 JSON,并列出 log、dns、inbounds、outbounds、route 等配置区域。这个结构表用于说明配置可以包含哪些区域,不代表每个字段都必须填写;能否启动还取决于当前配置、客户端版本和实际出站内容。查看 sing-box 配置结构官方文档

最小结构示例(不可直接复制,也不能直接连接):{"outbounds":[],"route":{}}。它只用于帮助你识别 JSON 对象,里面没有真实服务器、认证信息或可用节点,因此不能作为完整配置运行。

先确认订阅格式:不要把其他内容当成 sing-box JSON

常见内容与 Remote Profile 的关系
内容类型常见特征能否直接作为 SFA Remote Profile正确处理方式
sing-box JSON打开后是 JSON 对象,通常以花括号表示结构在字段兼容的前提下可以尝试添加 Remote Profile,保存并手动更新
Clash YAML文本依赖缩进和 YAML 键值结构不能因为都是“订阅”就直接混用向提供方索取 sing-box 格式,或使用已核验的转换方式
Base64 编码内容打开后是一长串编码文本,未必能直接阅读不能直接当成完整 sing-box 配置确认它到底是节点集合还是完整配置
单条分享链接通常只有一个协议链接或一条节点信息不是完整 Remote Profile 配置使用客户端支持的单节点导入功能,或获取完整配置
HTML 错误页出现登录页、过期提示、权限错误或网页源码不能导入检查 URL、授权状态和订阅有效性
  1. 复制订阅 URL 到浏览器地址栏,观察返回的是配置文本还是网页错误。
  2. 如果内容是 HTML、YAML、编码文本或单条链接,不要只把后缀改成 .json;改后缀不会改变实际内容格式。
  3. 如果订阅需要登录或带授权参数,重新复制完整 URL,避免漏掉问号、等号和其他参数。
  4. 如果提供方同时给出多个格式,优先选择明确标注为 sing-box、SFA 或 JSON 的版本;没有该选项时,应先向提供方确认兼容性。

订阅 URL 应按凭据处理。不要把完整链接发到公开群组、截图、工单或未经核验的在线转换页面;如果链接已经公开,按提供方支持的方式重新生成或重置。

Android SFA 导入 Remote Profile:按功能名称寻找入口

官方客户端页面确认,sing-box for Android 用于管理和运行本地或远程 sing-box 配置,并提供 Android 平台相关功能;官方页面同时列出下载渠道和系统要求。本文不把界面名称写死为某个构建版本,实际界面可能显示为 Profiles、Configuration 或“配置文件”。查看 sing-box for Android 官方页面

  1. 打开配置文件管理区域。进入 SFA 主界面,寻找 Profiles、Configuration 或“配置文件”入口。若首页只有启动按钮,继续查找侧边栏、设置页或配置管理入口。
  2. 新建远程配置。点击添加、加号或 New,选择 Remote、远程配置或带 URL 更新来源的配置类型。不同构建版本的名称可能不同,但核心是“远程 URL 作为更新来源”。
  3. 填写名称和 URL。名称可写“工作订阅”等便于识别的短名称;URL 粘贴完整订阅地址,不要手动删除参数,也不要把订阅内容粘到名称栏。
  4. 保存后手动更新。点击保存,再执行 Update、更新或刷新。第一次更新只用于验证下载和解析,不代表节点已经实际可用。
  5. 查看配置状态。如果当前构建提供配置内容查看器,查看是否返回 JSON,并留意是否出现 HTML 错误、截断内容或明显的解析提示。
  6. 启动服务并完成系统授权。回到 Dashboard、主控制页或服务页启动。Android 需要由系统确认 VPN 权限时,按提示完成授权;如果已经有其他 VPN 应用运行,先停止它再测试。
  7. 选择出站并做实际测试。只有配置中存在 Selector 或 URLTest 等组出站时,客户端才可能显示组选择入口。看到节点名称只说明配置中存在出站,不等于该出站已经连接成功;还要打开网页或使用目标应用验证。

官方通用图形客户端文档将 Remote Profile 定义为以 URL 作为更新来源的远程配置,并说明图形客户端应提供配置查看、自动更新和远程配置导入方式。该文档属于统一功能说明,不能当成每个构建版本的固定菜单截图;如果你的 SFA 没有 Remote 字样,应按“配置文件管理—添加—URL 更新来源”的功能寻找,或回到官方客户端页面确认构建来源。查看图形客户端通用功能说明

导入失败、Groups 为空、启动无网络:按现象分流

Android 订阅故障排查表
现象先判断哪一层下一步动作
订阅链接打不开下载层切换 Wi-Fi 与移动网络,重新复制完整 URL,并确认链接是否需要授权或已失效
返回 HTML、YAML 或编码文本格式层获取 sing-box JSON;不要把其他格式直接改后缀
JSON 解析失败内容层查看原始返回是否被截断、混入错误提示,随后核对当前客户端支持的字段
导入成功但 Groups 为空配置结构层查看是否有 Selector 或 URLTest;如果只有单个出站,Groups 为空可能是配置设计,不一定是客户端故障
服务启动但没有网络系统与连接层停止其他 VPN,重新完成系统 VPN 授权,只测试一个出站,再查看日志或错误信息
自动更新没有变化更新层先手动 Update,记录更新时间和错误;再检查后台限制与远程 URL 是否仍可访问

配置存在,不等于节点可用

如果配置查看器能显示 outbounds,只能说明配置中有出站定义;它不代表服务器可达、认证正确、TLS 参数匹配或实际网页访问成功。排查时应记录三项结果:配置是否能更新、服务是否能启动、选定出站能否完成实际访问。

Groups 为空时不要先改 DNS

官方通用说明指出,Dashboard 的组选择与配置中的 Selector 或 URLTest 组出站有关。如果配置只有一个普通出站,客户端没有 Groups 入口可能是正常结果。先查看配置结构和出站类型,再决定是否需要更换由提供方生成的完整配置。

启动后无网络的最短回滚

  1. 停止 SFA 服务,并关闭其他 VPN、代理或网络过滤应用。
  2. 重新启动 SFA,按 Android 系统提示再次确认 VPN 权限。
  3. 只选择一个明确存在的出站测试,不要同时切换多个节点或修改多个字段。
  4. 如果仍然无网络,记录客户端错误、配置更新时间和当前出站名称,再检查 DNS、route、TUN 相关字段是否适用于当前 Android 构建。
  5. 若更新后才出现故障,恢复更新前保留的本地副本或重新导入上一次可用配置,避免在远程配置上连续覆盖修改。

Android 客户端的 TUN、VPN 权限和后台运行行为受客户端构建与系统版本影响。不要直接把桌面或 Linux 配置中的字段全部复制到 Android;字段是否可用,应以当前客户端和配置文档为准。

备份、更新与回滚:把订阅当作远程凭据管理

  1. 更新前记录状态:记下 Remote Profile 名称、最后一次成功更新时间、当前使用的出站,以及是否能正常启动。
  2. 保留可回退副本:如果客户端支持导出或复制配置,保存一份脱敏副本;不要把真实订阅 URL、密码、密钥和私有参数发布到公开位置。
  3. 先手动更新,再长期使用:第一次导入不要立即依赖自动更新。先手动更新、启动、选择一个出站并完成实际访问测试。
  4. 更新后分开判断:如果下载失败,是 URL 或网络问题;如果 JSON 解析失败,是内容或字段兼容问题;如果启动后无网络,则进入系统授权、出站、DNS 或 route 排查。
  5. 升级时核对官方资料:客户端、内核、字段和构建版本会变化。本文按 facts.today,即 2026-11-01 的官方页面核对;以后升级时仍应重新查看官方文档和发布说明,不把本文菜单名称视为永久固定。

官方配置文档还提供 JSON Schema、配置检查和格式化相关说明。对于普通 Android 用户,优先使用客户端自身的解析提示;如果需要在电脑上检查配置,再根据当前安装版本的官方帮助确认命令和参数,不能把不同版本的命令混用。查看 sing-box JSON Schema 官方说明

如果你已经有订阅但 Android 导入后仍无法连接,可前往边界云加速官网了解相关服务,具体能力与适用范围以官方说明为准。

完成标准:什么时候才算 sing-box 订阅配置成功

  1. 订阅 URL 在当前网络下可以访问,返回内容不是 HTML 错误页。
  2. 返回内容与 sing-box JSON 配置相符,而不是 YAML、Base64 或单条分享链接。
  3. SFA 能保存 Remote Profile,并完成至少一次手动更新。
  4. 配置查看器能显示配置内容,没有明显截断或解析错误。
  5. 服务启动时完成 Android 系统 VPN 授权。
  6. 配置中存在出站;如果需要 Groups,还要确认存在 Selector 或 URLTest 组出站。
  7. 至少用一个出站完成实际网页或应用访问测试。
  8. 更新前保留名称、时间和可回退副本,便于出现问题时恢复。

做到第 3 步,只能说明订阅链接和格式基本可读;做到第 7 步,才有依据判断当前配置、出站和 Android 本机连接是否真正可用。

常见问题

sing-box 订阅链接打开后不是 JSON,还能直接导入吗?

不建议直接导入。Remote Profile 面向远程 sing-box 配置;如果返回的是 YAML、Base64、HTML 错误页或单条分享链接,应先获取 sing-box 专用格式或确认可靠的转换方式。仅修改文件后缀不会改变内容格式。

SFA 导入订阅后为什么没有 Groups?

Groups 是否出现取决于配置结构。官方通用说明将组选择与 Selector 或 URLTest 等组出站关联;如果配置只有一个普通出站,Groups 为空可能是正常结果。先查看配置内容,不要直接判定为客户端故障。

配置导入成功但启动后手机没有网络怎么办?

先停止其他 VPN 或代理应用,重新启动 SFA 并完成系统 VPN 授权,再只测试一个出站。若仍失败,记录错误信息和配置更新时间,随后检查出站、DNS、route 与 TUN 字段是否适用于当前 Android 构建。

Remote Profile 一定会按固定时间自动更新吗?

远程配置具备自动更新设计,但实际更新时间、后台执行和电池限制可能受客户端构建及 Android 系统影响。首次导入后先手动更新,并记录最后成功时间;自动更新异常时先检查远程 URL 和后台限制。

没有 sing-box 专用订阅,能不能把其他订阅直接改成 JSON?

不能靠改后缀完成转换。Clash YAML、Base64 节点集合、单条分享链接和完整 sing-box JSON 不是同一种内容。优先向提供方索取兼容格式;必须转换时,先核查隐私、凭据暴露和字段兼容性。

相关阅读

参考资料

  1. sing-box for Android 官方页面:功能、系统要求与下载渠道
  2. sing-box 图形客户端通用功能说明:Remote Profile、Dashboard 与 Groups
  3. sing-box 配置结构官方文档:JSON、字段、检查与格式化
  4. sing-box JSON Schema 官方说明