导入导出 hosts 与规则 —— 换设备或分享配置的完整指南
为什么要导入导出
常见场景:
- 换手机:旧手机的 hosts 配置 + 自定义规则全在脑子里?重新配一遍太麻烦
- 分享配置:和朋友交流,让他导入你调了半年的精准规则
- 备份:升级 Android 版本、刷 ROM 前备份一份配置
- 导入外部规则:比如拿到别人整理好的 hosts 文件或某个特定 APP 的 Allowlist 集合
Hosts 文件导出
AdAway 的主菜单里有 "导出 Hosts 文件"(Export hosts file),会把当前合并后的完整 hosts 文件保存为纯文本文件到手机存储。
导出的文件内容就是 /system/etc/hosts 的内容(root 模式)或 VPN 模式下的完整合并表。可以分享给别人用——只要对方用的是兼容的 hosts 拦截工具(AdAway、AdGuard、Blockada、甚至 PC 上的 Pi-hole),都能导入。
Hosts 文件导入
有两种导入方式:
方式一:作为新 Hosts 源
把拿到的 hosts 文件放到 GitHub 或其他可访问的 URL,然后在 AdAway 的 Hosts Sources 里加这个 URL——和加任何在线源一样。
方式二:作为本地文件导入
主菜单 → Hosts Sources → + 按钮 → 选"从文件导入",然后用系统文件选择器选那个 hosts 文件。
导入的本地文件会被作为一个独立的 Hosts 源加入,和其他在线源地位相同。
规则列表导出(Allowlist / Blocklist / Redirect List)
AdAway v5/v6 支持把你的自定义规则列表单独导出:
- 进入对应的列表(Allowlist / Blocklist / Redirect)
- 右上角菜单 → 导出(Export)
- 会生成一个 JSON 文件,包含所有规则及其配置
这个 JSON 文件的格式大概是:
{
"allowlist": [
{"hostname": "api.example.com", "enabled": true}
],
"blocklist": [
{"hostname": "*.tracking.io", "enabled": true}
],
"redirectionlist": [
{"hostname": "google.com", "redirection": "111.222.1.1", "enabled": true}
]
}
规则列表导入
同样,在对应的列表界面选菜单 → 导入(Import),然后选之前导出的 JSON 文件。导入时 AdAway 会:
- 合并而非覆盖——已有的规则保留,新规则追加
- 如果遇到重复主机名,会提示你选择保留哪个
AdAway 官方提供的在线导入导出工具
AdAway 官方网站 adaway.org/export 页面提供了一个 Web 工具,可以:
- 粘贴 legacy 格式的 hosts 文件,转换成 AdAway 可导入的格式
- 批量生成 hosts 规则
- 验证 hosts 文件格式是否正确
这个工具对于"从 PC 整理好 hosts 再导入手机"的场景特别方便。
备份建议
定期(或每次大改动后)导出以下三份:
- 生成的 hosts 文件(AdAway 主菜单导出)
- 所有自定义规则(Allowlist + Blocklist + Redirect 列表分别导出)
- Hosts Sources 的配置(哪些源启用了、URL 是什么)
然后把这三份文件同步到云盘或 PC,就不怕换设备或刷机丢配置了。
注意事项
- JSON 导入不要混用不同版本的 AdAway:v5 和 v6 的规则格式可能略有差异,导入前确认版本一致
- 导出的 hosts 文件里不包含 localhost 条目:AdAway 导出时会剥离 localhost,导入时会自己补上
- 规则启用状态也会被导出:不是只导出主机名,每条规则的 enabled/disabled 状态也在 JSON 里
- 不要导入来源不明的规则包:有人可能故意放恶意重定向规则(把银行域名指向钓鱼 IP)——只信你自己生成的或可信社区维护的