Android O 可以上網 提示無法訪問網絡


android O連接Wifi,可以上網,但是卻提示無法訪問網絡,並且在wifi圖標上有一個'x'。

從android N開始引入了監控機制,每次連接都會訪問一下google的服務器,由於國內被牆,所以就會出先上面的問題。連接vpn,訪問google就不會有'x'。

logcat錯誤:

03-30 00:32:37.407  1385  5819 D NetworkMonitor/NetworkAgentInfo [WIFI () - 102]: PROBE_HTTPS https://www.google.com/generate_204 Probe failed with exception java.net.SocketTimeoutException: failed to connect to www.google.com/75.126.33.156 (port 443) from /192.168.1.194 (port 41944) after 10000ms

對應文件frameworks/base/services/core/java/com/android/server/connectivity/NetworkMoniter.java

public class NetworkMonitor extends StateMachine {
    private static final String TAG = NetworkMonitor.class.getSimpleName();
    private static final boolean DBG  = true;
    private static final boolean VDBG = false;

    // Default configuration values for captive portal detection probes.
    // TODO: append a random length parameter to the default HTTPS url.
    // TODO: randomize browser version ids in the default User-Agent String.
    private static final String DEFAULT_HTTPS_URL     = "https://www.google.com/generate_204";
    private static final String DEFAULT_HTTP_URL      =    
            "http://connectivitycheck.gstatic.com/generate_204";
    private static final String DEFAULT_FALLBACK_URL  = "http://www.google.com/gen_204";
    private static final String DEFAULT_OTHER_FALLBACK_URLS =
            "http://play.googleapis.com/generate_204";
    private static final String DEFAULT_USER_AGENT    = "Mozilla/5.0 (X11; Linux x86_64) "
                                                      + "AppleWebKit/537.36 (KHTML, like Gecko) "
                                                      + "Chrome/60.0.3112.32 Safari/537.36";

將上面的DEFAULT_HTTPS_URL更改為可以訪問的網站即可,例如"https//www.google.cn/generate_204"

提示不能訪問的代碼網絡的代碼:

packages/apps/Settings/src/com/android/settings/wifi/WifiNoInternetDialog.java:            ap.mMessage = getString(R.string.no_internet_access_text);

Tony Liu

2018-4-10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM