Bagaimana cara menonaktifkan deteksi captive portal? Bagaimana cara menghapus tanda seru pada Wi-Fi atau ikon sinyal di Lollipop?

36

Saat terhubung ke Internet, sistem akan memeriksa apakah ada di taman bertembok, yang hanya mencoba terhubung ke Google. Jika gagal, di Android 5, akan ada tanda seru pada ikon WiFi atau ikon sinyal.

Dalam beberapa situasi, ini menjengkelkan. Katakanlah, di Cina, Google diblokir, tanda seru akan selalu ada, yang tidak ada artinya.

Bagaimana saya bisa menonaktifkan pemeriksaan ini, dan membuat sistem berasumsi, terhubung WiFi / data seluler terhubung Internet?

Qian
sumber
Dibuka kembali karena ini adalah pertanyaan IMO yang berbeda. Anda dapat menonaktifkan ini tanpa menemukan masalah di pertanyaan lain.
Matius Baca

Jawaban:

33

Itu mudah. Di terminal (memerlukan root), atau di adb shell(tidak memerlukan root), jalankan perintah

settings put global captive_portal_detection_enabled 0

dan reboot. Itu harus dinonaktifkan. Keadaan yang ada juga dapat diverifikasi melalui perintah

settings get global captive_portal_detection_enabled

Respons "null" menunjukkan nilai kunci global belum ditetapkan dan Android akan kembali ke pengaturan default dan melakukan deteksi. Jika deteksi dinonaktifkan, respons "0" akan diterima.

Info lebih lanjut: Android: Cara menghapus deteksi "captive portal" di android 4.2.2 dan 4.3

Ini juga berfungsi di 5.

Qian
sumber
Besar! Saya perhatikan bahwa tautan menjelaskan melakukan hal ini di 4.2.2 dan 4.3. Sudahkah Anda (atau orang lain) memverifikasi bahwa ini juga berfungsi di 5.0.x?
Terbang ke
@SimonW ya, itu berhasil. Itu sebabnya saya menandai pertanyaan lollipop. Saya menggunakan CyanogenMod 12.
Qian
Saya di android noob. Apakah saya perlu melakukan root untuk mendapatkan ini?
Christian Bongiorno
1
Komentari oleh Gery , tidak memiliki perwakilan untuk itu: Untuk orang-orang yang menggunakan terminal untuk pertama kalinya, jangan lupa untuk menempatkan perintah "su" sebelum Anda melakukan apa pun, untuk mengizinkan izin pengguna super. (Butuh beberapa saat bagi saya untuk mencari tahu mengapa saya mendapatkan "izin ditolak") Setelah itu bekerja seperti pesona.
Izzy
1
Mulai dari Nougat (saya kira, mungkin hanya 7.1.2, atau sudah Marshmallow), gunakan settings put global captive_portal_mode 0sebagai gantinya, lihat jira.lineageos.org/browse/REGRESSION-620
bonob
13

Dalam Pratinjau Pengembang Android M untuk Shamu (Nexus 6), dan mungkin build lain dari OS ini, captive_portal_server globaldigunakan oleh OS terlepas dari keadaan captive_portal_detection_enableduntuk menentukan kesehatan jaringan WiFi.

Untuk jaringan WiFi, itu tidak hanya akan menggambar tanda seru pada ikon kekuatan, itu akan membuat daftar hitam SSID dari penyambungan kembali otomatis jika tidak berhasil curlURL yang ditentukan dalam captive_portal_server globalvia melalui SSID itu. Koneksi ulang manual diperbolehkan tetapi hanya akan tetap terhubung jika Anda memiliki captive_portal_detection_enableddan memilih "Gunakan Jaringan Ini Apa Adanya" secara manual, setiap kali Anda terhubung ke WiFi SSID itu. Penimpaan ini bersifat sementara.

Untuk jaringan penyedia seluler, captive_portal_serverini hanya digunakan untuk menggambar tanda seru pada ikon kekuatan tetapi akan tetap terhubung, dan lalu lintas akan mengalir jika koneksi berfungsi.

Pada perangkat Anda yang sudah di-rooting, solusinya adalah mengaktifkan kembali captive_portal_detection_enabledjika Anda telah menonaktifkannya, sambungkan ke jaringan WiFi itu, pilih "Use This Network As-Is" dari menu drop-down di pop-up portal captive, nonaktifkan jaringan seluler Anda data untuk fokus pada penentuan situs web yang dapat diambil melalui jaringan Wifi Anda dengan masuk ke portal captive Anda dan kemudian gunakan browser untuk menemukan yang berfungsi. Setelah itu, Anda dapat menonaktifkan captive_portal_detection_enableduntuk mencegah pop-up yang mengganggu.

Untuk mengaktifkan kembali captive_portal_detection, jika sebelumnya dinonaktifkan, jalankan perintah:

settings put global captive_portal_detection_enabled 1

Nonaktifkan Jaringan Seluler Anda (di bawah Pengaturan - Penggunaan Data - Data Seluler - Mati), untuk memaksa ponsel menggunakan jaringan WiFi untuk semua lalu lintas, untuk sementara waktu. Ini tidak akan diperlukan setelah Anda memiliki semua pengaturan di mana mereka perlu.

Android M tampaknya membutuhkan situs web yang memuat dengan sukses dan tidak secara aktif mengembalikan 204 (tidak ada konten).

Beberapa opsi termasuk tetapi tidak terbatas pada

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...

Setelah menemukan satu yang berfungsi untuk Jaringan WiFi Anda (seringkali memerlukan lebih banyak imajinasi dan upaya di balik proksi gateway web perusahaan yang tidak menyukai lalu lintas HTTPS sebelum otentikasi), Anda dapat menyimpan server.

Simpan server dengan menjalankan ini di aplikasi terminal root yang diaktifkan, ganti contoh URL dengan yang Anda harapkan akan berfungsi:

settings put global captive_portal_server androidcheck.kiritostudio.com

Mulai ulang perangkat Anda. Cobalah. Setelah Anda puas dengan perilaku Tanda Seru pada ikon, langkah terakhir adalah menonaktifkan pop-up portal captive, yang merupakan salah satu penemuan paling disayangkan dekade ini.

Perintah masalah:

settings put global captive_portal_detection_enabled 0

Jika Anda menemukan diri Anda di negara lain atau situasi WiFi di mana masalah muncul, sayangnya Anda harus mengulangi hal di atas dari awal, mengaktifkan captive_portal_detection_enabledkembali, memulai kembali, menemukan server yang tepat dan kemudian menonaktifkan deteksi portal setelahnya.

Pengguna Android M
sumber
Apakah maksud Anda HTTP 204 ( tidak ada konten ) atau HTTP 404 (tidak ditemukan)? Saat ini saya berubah menjadi "tidak ada konten" berdasarkan jawaban lain
Andrew T.
Ini memecahkan masalah "terhubung, tidak ada internet" di Nougat. Menjalankan CM14.1 fresh-flashed (7.1.2) pada Nexus.
Yvon
1

Anda dapat mengatur alamat server portal captive Anda untuk itu.

settings put global captive_portal_server g.cn

Kemudian, hidupkan ulang ponsel Anda.

PS: Sebelum itu, Anda bisa memvalidasi server yang tersedia.

http://g.cn/generate_204

Kebin Liu
sumber
Lebih suka g.cn untuk daratan Cina
youfu
Saya mendapatkan Galat HTTP 404.0 - Tidak Ditemukan
Lucky
@ Lucky Silakan gunakan g.cn.
Kebin Liu