原因
这是Android 5.0引入的网络评估机制:就是当你连上网络后,会给目标产生204响应的服务器发送给一个请求,如果服务器返回的是状态码为204的响应,那么就 被认为网络可以访问;否则,如返回的是其他状态码,那么将被视为网络访问需要登录操作等;没有响应的话,就被认为是网络不可访问。这里的情况就是,目标服 务器不能正常访问
修改&恢复默认
默认使用https来验证,如要使用http,需要 先写入关闭 https 验证的配置,再填写 http 服务器 。
- 使用https
adb shell settings put global captive_portal_https_url 服务地址
- 使用http
adb shell settings put global captive_portal_use_https 0
adb shell settings put global captive_portal_http_url 服务地址
- 使用默认,即删除配置
adb shell settings delete global captive_portal_http_url
adb shell settings delete global captive_portal_https_url
- 直接设置代理
adb shell settings put global http_proxy 192.168.50.2:7890
产生204响应的服务器
- http://connect.rom.miui.com/generate_204
- http://www.v2ex.com/generate_204
- https://captive.v2ex.co/generate_204
- http://www.noisyfox.cn/generate_204
- http://www.google.cn/generate_204
本文由 devifish 创作,采用 知识共享署名4.0 国际许可协议进行许可。
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。