在我的應用程序中,首次啓動應用程序時,在我的啓動畫面期間,我正在檢查網絡連接。如果網絡連接存在,我將通過調用以下方法進入互聯網連接。但是,我手動禁用了我的互聯網連接(我連接到路由器,但無法在瀏覽器中輸入網頁),但下面的方法總是返回我-200 - 這對於互聯網連接是真實的。HttpURLConnection urlc
public boolean hasActiveInternetConnection()
{
try
{
HttpURLConnection urlc = (HttpURLConnection) (new URL("http://www.google.com").openConnection());
urlc.setRequestProperty("User-Agent", "Test");
urlc.setRequestProperty("Connection", "close");
urlc.setConnectTimeout(3000);
urlc.setReadTimeout(4000);
urlc.connect();
Log.i("Splash", Integer.toString(urlc.getResponseCode()));
return (urlc.getResponseCode() == 200);
} catch (IOException e)
{
return (false);
}
}
可能是響應您的請求的路由器。無論如何,你爲什麼不去看看發送的內容是什麼? – PCoder 2013-03-07 10:23:40
PCoder,這裏是我禁用互聯網連接時pinging google.com的響應。 C:\ Windows \ System32下>平google.com --- 執行ping google.com [198.18.1.9]與32個字節的數據:---從192.168.1.254 答覆:目標主機不可訪問.-- - Ping統計信息爲198.18.1.9:--- 信息包:發送= 4,收到= 4,丟失= 0(0%丟失), – tony9099 2013-03-07 10:26:13