December 6, 2016 · Android Nexus

Android 5.x/6.x/7.0/7.1/8.0/9.0 网络图标感叹号的解决方法

原理:系统会定时访问服务器以确定网络是否畅通,如果无法访问wifi图标会提示感叹号,而巧合的是国内用户是无法访问这个服务器。结果就是不管网络能不能用,wifi图标上一直都有感叹号。 现在我们需要做的就是替换掉系统内置的检测服务器,换成能正常提供反馈的服务器地址就行。

可用地址:204.ustclug.org (科大讯飞)

8.0/8.1/9.0可用方法

关闭连通性检测功能

adb shell settings put global captive_portal_mode 0

不关闭连通性检测

adb shell settings put global captive_portal_https_url https://204.ustclug.org/generate_204

android 7.1.1使用如下方法

字段由 CAPTIVEPORTALSERVER 变更为 CAPTIVEPORTALHTTPSURL ,并且不进行 generate204 拼接,所以我们需要使用https协议将完整地址写上。

相关属性

CAPTIVE_PORTAL_HTTP_URL
CAPTIVE_PORTAL_HTTPS_URL
CAPTIVE_PORTAL_USE_HTTPS

1.关闭检测功能
adb shell settings delete global captive_portal_server
adb shell settings put global captive_portal_detection_enabled 0

如需开启将0改为1即可

2.不关闭检测功能①
adb shell settings put global captive_portal_use_https 0

adb shell settings put global captive_portal_server 204.ustclug.org

3.不关闭检测功能②
adb shell settings put global captive_portal_https_url https://204.ustclug.org/generate_204

或者

adb shell settings put global captive_portal_http_url http://204.ustclug.org/generate_204

Android 7.0/7.1.0使用如下方法

adb shell settings put global captive_portal_server http://g.cn/generate_204

Android 5.x/6.x/使用如下方法

1.完全屏蔽网络检查功能,最简单快速,但是就没有办法提示wifi登录:

adb shell settings put global captive_portal_detection_enabled 0

2.用国内的服务器替换掉google的服务器:

adb shell settings put global captive_portal_server g.cn

参考了以下文章:https://xn--yet824cpd.xn--fiqs8s/45.html;https://kyonli.com/p/208