Wenn es mit dem Internet verbunden ist, prüft das System, ob es sich in einem ummauerten Garten befindet, der einfach versucht, eine Verbindung zu Google herzustellen. Wenn dies fehlschlägt, wird in Android 5 ein Ausrufezeichen auf dem WLAN-Symbol oder dem Signalsymbol angezeigt.
In manchen Situationen ist das nervig. Sagen wir, in China ist Google blockiert, das Ausrufezeichen wird immer da sein, was nichts bedeutet.
Wie kann ich diese Prüfung deaktivieren und das System davon ausgehen lassen, dass verbundenes WLAN/mobile Daten mit dem Internet verbunden sind?
Es ist einfach. Geben Sie im Terminal (root erforderlich) oder in adb shell
(root nicht erforderlich) den Befehl aus
settings put global captive_portal_detection_enabled 0
und neu starten. Es sollte deaktiviert werden. Der vorhandene Zustand kann auch über den Befehl überprüft werden
settings get global captive_portal_detection_enabled
Eine Antwort von „Null“ zeigt an, dass der globale Schlüsselwert nicht festgelegt wurde und Android auf die Standardeinstellung zurückgreift, bei der es eingeschaltet ist und die Erkennung durchführt. Wenn die Erkennung deaktiviert ist, wird die Antwort "0" empfangen.
Weitere Informationen: Android: So entfernen Sie die „Captive Portal“-Erkennung auf Android 4.2.2 und 4.3
Es funktioniert auch in 5.
In der Android M Developer Preview für Shamu (Nexus 6) und möglicherweise anderen Builds dieses Betriebssystems captive_portal_server global
wird das vom Betriebssystem unabhängig vom Status verwendet, um den Zustand captive_portal_detection_enabled
eines WLAN-Netzwerks zu bestimmen.
Bei WiFi-Netzwerken zeichnet es nicht nur ein Ausrufezeichen auf das Stärkesymbol, es wird diese SSID von der automatischen Wiederverbindung auf die schwarze Liste setzen, wenn curl
die in der angegebene URL nicht erfolgreich captive_portal_server global
über diese SSID erreicht wird. Die manuelle Wiederverbindung ist zulässig, bleibt aber nur dann verbunden, wenn Sie captive_portal_detection_enabled
jedes Mal, wenn Sie sich mit dieser WLAN-SSID verbinden, manuell „Dieses Netzwerk unverändert verwenden“ auswählen. Diese Überschreibung ist vorübergehend.
Bei Netzen von Mobilfunkanbietern wird das captive_portal_server
nur verwendet, um ein Ausrufezeichen auf das Stärkesymbol zu zeichnen, bleibt aber verbunden, und der Datenverkehr fließt, wenn die Verbindung funktioniert.
Auf Ihrem gerooteten Gerät besteht die Lösung darin, es wieder zu aktivieren, captive_portal_detection_enabled
wenn Sie es deaktiviert haben, sich mit diesem WLAN-Netzwerk zu verbinden, „Dieses Netzwerk unverändert verwenden“ aus dem Dropdown-Menü im Captive-Portal-Popup auszuwählen und Ihr mobiles Netzwerk zu deaktivieren Daten, um sich darauf zu konzentrieren, eine Website zu bestimmen, die über Ihr WLAN-Netzwerk abgerufen werden kann, indem Sie sich bei Ihrem Captive-Portal anmelden und dann einen Browser verwenden, um eine funktionierende zu finden. Danach können Sie deaktivieren captive_portal_detection_enabled
, um das lästige Popup zu verhindern.
Um Ihr captive_portal_detection
, wenn Sie es zuvor deaktiviert haben, wieder zu aktivieren, geben Sie den Befehl ein:
settings put global captive_portal_detection_enabled 1
Deaktivieren Sie Ihr mobiles Netzwerk (unter Einstellungen – Datennutzung – Mobile Daten – Aus), um das Telefon zu zwingen, vorübergehend das WLAN-Netzwerk für den gesamten Datenverkehr zu verwenden. Dies ist nicht erforderlich, sobald Sie alle Ihre Einstellungen dort haben, wo sie sein müssen.
Android M scheint eine Website zu erfordern, die erfolgreich lädt und nicht aktiv eine 204 (kein Inhalt) zurückgibt.
Einige Optionen beinhalten, sind aber nicht beschränkt auf
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...
Nachdem Sie einen gefunden haben, der für Ihr WiFi-Netzwerk funktioniert (erfordert oft mehr Vorstellungskraft und Versuche hinter Unternehmens-Web-Gateway-Proxys, die HTTPS-Verkehr nicht mögen, vor der Authentifizierung), können Sie den Server speichern.
Speichern Sie den Server, indem Sie dies in Ihrer Root-fähigen Terminal-App ausführen und die Beispiel-URL durch diejenige ersetzen, von der Sie hoffen, dass sie funktioniert:
settings put global captive_portal_server androidcheck.kiritostudio.com
Starten Sie Ihr Gerät neu. Versuch es. Sobald Sie mit dem Verhalten der Ausrufezeichen auf den Symbolen zufrieden sind, besteht der letzte Schritt darin, das Captive-Portal-Popup zu deaktivieren, das eine der unglücklichsten Erfindungen dieses Jahrzehnts ist.
Befehl ausgeben:
settings put global captive_portal_detection_enabled 0
Wenn Sie sich in einem anderen Land oder einer anderen WLAN-Situation befinden, in der Probleme auftreten, müssen Sie das oben Gesagte leider von Anfang an wiederholen, , neu aktivieren captive_portal_detection_enabled
, neu starten, den richtigen Server finden und anschließend die Portalerkennung deaktivieren.
Sie können Ihre Captive-Portal-Serveradresse darauf einrichten.
settings put global captive_portal_server g.cn
Starten Sie dann Ihr Telefon neu.
PS: Davor können Sie überprüfen, ob der Server verfügbar ist.
Fliegen nach
Qian
Izzy
Bonob
settings put global captive_portal_mode 0
stattdessen, siehe jira.lineageos.org/browse/REGRESSION-620schlimmchen
su; setenforce 0; setting put ...
.TheRealTengri