W wersji zapoznawczej dla programistów Androida M dla Shamu (Nexus 6) i ewentualnie innych wersji tego systemu operacyjnego system captive_portal_server global
jest używany przez system operacyjny niezależnie od stanu captive_portal_detection_enabled
w celu określenia stanu sieci Wi-Fi.
W przypadku sieci Wi-Fi nie tylko wykrzykuje wykrzyknik na ikonie siły, ale również umieszcza na czarnej liście ten identyfikator SSID po ponownym automatycznym ponownym połączeniu, jeśli curl
adres URL podany w captive_portal_server global
tym identyfikatorze SSID nie powiedzie się. Ręczne ponowne połączenie jest dozwolone, ale pozostanie podłączone tylko wtedy, gdy captive_portal_detection_enabled
ręcznie wybierzesz „Użyj tej sieci w stanie, w jakim się znajduje” za każdym razem, gdy łączysz się z tym identyfikatorem SSID Wi-Fi. To zastąpienie jest tymczasowe.
W przypadku sieci dostawców telefonii komórkowej captive_portal_server
znak wykrzyknika jest wyświetlany tylko na ikonie siły, ale pozostanie połączony, a ruch będzie płynął, jeśli połączenie będzie działało.
Na zrootowanym urządzeniu rozwiązaniem jest ponowne włączenie, captive_portal_detection_enabled
jeśli go wyłączyłeś, podłącz się do tej sieci Wi-Fi, wybierz „Użyj tej sieci w stanie obecnym” z menu rozwijanego w wyskakującym okienku portalu, wyłącz sieć komórkową dane do skoncentrowania się na określeniu strony internetowej, którą można odzyskać za pośrednictwem sieci Wi-Fi, logując się do własnego portalu, a następnie użyj przeglądarki, aby znaleźć taką, która działa. Następnie możesz wyłączyć, captive_portal_detection_enabled
aby uniknąć irytującego wyskakującego okienka.
Aby ponownie włączyć captive_portal_detection
, jeśli wcześniej go wyłączyłeś, wydaj polecenie:
settings put global captive_portal_detection_enabled 1
Wyłącz sieć komórkową (w Ustawieniach - Wykorzystanie danych - Dane mobilne - Wyłącz), aby tymczasowo zmusić telefon do korzystania z sieci Wi-Fi dla całego ruchu. Nie będzie to wymagane, gdy wszystkie ustawienia będą potrzebne.
Wygląda na to, że Android M wymaga strony, która ładuje się pomyślnie i nie zwraca aktywnie 204 (bez zawartości).
Kilka opcji obejmuje między innymi
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...
Po znalezieniu takiego, który działa dla Twojej sieci Wi-Fi (często wymaga więcej wyobraźni i prób za firmowymi serwerami proxy, które nie lubią ruchu HTTPS przed uwierzytelnieniem), możesz zapisać serwer.
Zapisz serwer, uruchamiając go w aplikacji terminalowej z włączonym rootem, zastępując przykładowy adres URL tym, na który masz nadzieję, że zadziała:
settings put global captive_portal_server androidcheck.kiritostudio.com
Uruchom ponownie urządzenie. Wypróbuj to. Gdy jesteś zadowolony z zachowania wykrzykników na ikonach, ostatnim krokiem jest wyłączenie wyskakującego okienka portalu dla niewoli, co jest jednym z najbardziej niefortunnych wynalazków tej dekady.
Polecenie wydania:
settings put global captive_portal_detection_enabled 0
Jeśli znajdziesz się w innym kraju lub w sytuacji Wi-Fi, w której występują problemy, niestety musisz powtórzyć powyższe czynności od początku captive_portal_detection_enabled
, ponownie włączyć , ponownie uruchomić, znaleźć odpowiedni serwer, a następnie wyłączyć wykrywanie portalu.