如何禁用强制门户检测?如何删除棒棒糖中Wi-Fi或信号图标上的感叹号?


36

连接到Internet时,系统会检查它是否在围墙花园中,而这只是试图连接到Google。如果失败,则在Android 5中,WiFi图标或信号图标上会带有感叹号。

在某些情况下,这很烦人。说,在中国,谷歌被阻止了,感叹号将永远存在,这是没有意义的。

如何禁用此检查,并使系统假设已连接的WiFi /移动数据已连接Internet?


重新打开,因为这是IMO的另一个问题。您可能希望禁用此功能,而不会在另一个问题中遇到此问题。
马修(Matthew)阅读了

Answers:


33

这很简单。在终端(需要root)或在adb shell(不需要root)中,发出命令

settings put global captive_portal_detection_enabled 0

然后重启。应该禁用它。现有状态也可以通过以下命令进行验证

settings get global captive_portal_detection_enabled

响应“ null”表示尚未设置全局密钥值,Android会恢复为默认状态为开启并执行检测。如果禁用检测,将收到“ 0”响应。

更多信息:Android:如何在Android 4.2.2和4.3上删除“强制门户”检测

它也可以在5中使用。


大!我注意到,该链接在4.2.2和4.3中描述了此操作。您(或其他任何人)是否已验证它也可以在5.0.x中使用?
Flyto

@SimonW是的,它可以工作。这就是为什么我标记了棒棒糖的问题。我正在使用CyanogenMod 12。
2015年

我在android noob中。我是否需要将其扎根才能继续使用?
Christian Bongiorno 2015年

1
Gery的评论,缺少它的代表:对于那些第一次使用Terminal的用户,不要忘记在执行任何操作之前先输入命令“ su”,以允许超级用户权限。(花了我一段时间才弄清楚为什么为什么要“拒绝权限”)之后,它就像是一种魅力。
伊兹

1
从牛轧糖(我想可能只是7.1.2,或者已经是棉花糖)开始,settings put global captive_portal_mode 0改用,请参阅jira.lineageos.org/browse/REGRESSION-620
bonob

13

在适用于Shamu的Android M开发者预览版(Nexus 6)以及该操作系统的其他版本中,captive_portal_server global无论状态如何,操作系统都会使用captive_portal_detection_enabled,以便确定WiFi网络的运行状况。

对于WiFi网络,它不仅会在强度图标上绘制一个感叹号,而且如果未成功通过该SSID curl在URL中指定的URL ,它将在自动重新连接中将该SSID列入黑名单captive_portal_server global。允许手动重新连接,但只有在captive_portal_detection_enabled每次连接到该WiFi SSID并手动选择“使用此网络原样”时,该连接才会保持连接状态。此替代是临时的。

对于移动运营商网络,captive_portal_server只能用于在强度图标上绘制感叹号,但将保持连接状态,并且如果连接正常,流量将会流动。

在已root用户的设备上,解决方案是重新启用(captive_portal_detection_enabled如果已禁用它),连接到该WiFi网络,从强制门户弹出窗口的下拉菜单中选择“按原样使用此网络”,禁用您的移动网络数据集中在确定可以通过您的Wifi网络检索的网站上,方法是登录到强制门户,然后使用浏览器找到有效的网站。在那之后,您可以禁用captive_portal_detection_enabled以防止讨厌的弹出窗口。

要重新启用您的captive_portal_detection,如果您先前将其禁用,请发出以下命令:

settings put global captive_portal_detection_enabled 1

禁用移动网络(在“设置”-“数据使用情况”-“移动数据”-“关闭”下),以强制手机暂时将WiFi网络用于所有流量。一旦将所有设置都放在需要的位置,就不需要此设置。

Android M似乎要求网站能够成功加载并且不会主动返回204(无内容)。

几个选项包括但不限于

androidcheck.kiritostudio.com
captive.apple.com
www.textise.net
the network router
localhost
127.0.0.1 (if you have an onboard simple HTTP server)
and the list goes on...

找到适合您的WiFi网络的设备(通常需要更多的想象力,并尝试在身份验证之前不喜欢HTTPS流量的公司Web网关代理之后),然后可以保存服务器。

通过在启用了root的终端应用程序中运行此服务器来保存服务器,将示例URL替换为您希望的URL:

settings put global captive_portal_server androidcheck.kiritostudio.com

重新启动设备。试试看。一旦您对图标上的感叹号的行为感到满意,最后一步就是禁用捕获的门户弹出窗口,这是近十年来最不幸的发明之一。

发出命令:

settings put global captive_portal_detection_enabled 0

如果发现自己在其他国家或出现问题的WiFi环境中,不幸的是,您需要从头开始重复上述步骤,重新启用captive_portal_detection_enabled,重新启动,找到合适的服务器,然后再禁用门户检测。


您是说HTTP 204(无内容)还是HTTP 404(未找到)?目前,我根据另一个答案
安德鲁·T

这解决了牛轧糖上的“已连接,没有互联网”的问题。在Nexus上运行全新的CM14.1(7.1.2)。
Yvon 2015年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.