去除WIFI和信号的X或感叹号教程
问题的根源:网络连通性检查 (Captive Portal Check)
安卓系统为了判断你是否真正连接到了互联网,会自动访问一个预设的服务器。
- 如果能成功访问:一切正常,无感叹号。
- 如果访问失败:系统就认为你虽然连接了 Wi-Fi 或移动网络,但无法上网,于是显示感叹号 !。
LineageOS 作为一个原生风格的系统,默认的检查服务器是 Google 的 connectivitycheck.googleapis.com。如果你在中国大陆,由于网络环境原因,这个地址是无法访问的。因此,检查永远失败,感叹号就一直存在。
解决方案:修改连通性检查服务器(推荐)
这是最根本、最完美的解决方法。你需要通过 ADB 命令将这个检查服务器的地址修改为国内可以正常访问的地址。
准备工作:
- 在电脑上安装好 ADB 工具。
- 在手机的 “设置” -> “关于手机” -> 连续点击“版本号”7次,打开“开发者选项”。
- 在 “设置” -> “系统” -> “开发者选项” 中,打开 “USB 调试” 开关。
- 用数据线将手机连接到电脑,手机上会弹出授权提示,选择“允许”。
执行命令:
打开电脑的命令行工具(Windows 的 CMD 或 PowerShell,macOS/Linux 的终端),依次输入以下命令。你可以从下面的服务器地址中任选一组来使用。
方案一:使用 V2EX 的服务器(非常流行)
方案二:使用小米的服务器
方案三:使用 Cloudflare 的服务器
操作完成后:
重启手机,或者开关一下飞行模式,感叹号应该就会消失。
备用解决方案
如果上述方法无效,或你不想使用 ADB,可以尝试以下方法:
方案四:彻底关闭连通性检查(不推荐)
这个方法会让感叹号消失,但也会带来一个副作用:当你连接到需要网页登录的公共 Wi-Fi (例如机场、酒店的 Wi-Fi) 时,系统可能不会自动弹出登录页面。
执行命令:
要恢复检查,执行 adb shell settings delete global captive_portal_mode 或 adb shell settings put global captive_portal_mode 1 即可。
方案五:使用科学上网工具
如果你有可用的 VPN 或代理工具,并设置为全局代理,手机能够访问到 Google 的服务器,感叹号也会自然消失。但这治标不治本,一旦关闭工具,问题会重现。
一图看懂 & 总结
| 症状 | 根本原因 | 最佳解决方案 (命令) |
|---|---|---|
| Wi-Fi/信号有 ! 感叹号 | 系统无法访问 Google 的网络检查服务器 connectivitycheck.googleapis.com。 |
通过 ADB 修改检查服务器地址。adb shell settings put global captive_portal_https_url https://www.v2ex.com/generate_204 |
总结一下:
这个问题几乎是所有在中国大陆使用类原生安卓系统(如 LineageOS, Pixel Experience)的用户都会遇到的。最佳且一劳永逸的解决方法就是使用第一种方案,通过 ADB 命令将检查服务器换成国内可以访问的地址。 执行一次,永久生效。