2011-11-21 92 views
-2

可能重複:
how to check wifi or 3g network is available on android device
Check the Internet Connectivity in Android如何檢查互聯網連接的設備的Android

我使用的是Android設備,我禁止我的設備的WiFi連接。現在我有一個使用互聯網的應用程序,每當應用程序運行時,我想顯示一個簡單的消息,即Toast消息,告訴「沒有Internet連接」而不是應用程序崩潰ñ。

如何做到這一點?

+3

看一看[這個答案](http://stackoverflow.com/questions/5828263/network-connection-always-detected-on-handset - 即使沒有網絡/ 5828311#5828311) –

+0

重複http://stackoverflow.com/questions/6094123/check-the-internet-connectivity-in-android和http://stackoverflow.com/questions/ 6167153 /檢查 - 如果程序 - 有 - 互聯網的WiFi – Polynomial

+4

正如其他人指出的那樣,已經有問題在一分鐘內可以找到正確的答案。所以** - 1 **沒有研究工作。 – 2011-11-21 11:06:49

回答

1
public final boolean isInternetOn() 
{ 

    ConnectivityManager connec = (ConnectivityManager) getSystemService 
    (Context.CONNECTIVITY_SERVICE); 

    if ((connec.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED) 
    ||(connec.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTING) 
    ||(connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTING) 
    ||(connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED)) 

    { 

return true; 

    } 

    else  
    return false; 

} 
+0

'else if'塊沒用,你可以直接返回false。 – Dalmas

0

嘗試使用這段代碼:

ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
    if(! (cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected()) ) 
    { 
     android.util.Log.e(LOGTAG, "No connectivity to send information..."); 
     return; 
    }