2014-09-26 87 views
3

我試圖在我的Android應用檢查互聯網在Android模擬器

public static boolean isConnectingToInternet(Context _context) { 
    ConnectivityManager connectivity = (ConnectivityManager) _context 
      .getSystemService(Context.CONNECTIVITY_SERVICE); 
    if (connectivity != null) { 
     NetworkInfo[] info = connectivity.getAllNetworkInfo(); 
     if (info != null) 
      for (int i = 0; i < info.length; i++) 
       if (info[i].getState() == NetworkInfo.State.CONNECTED) { 
        Log.d("Network", 
          "NETWORKnAME: " + info[i].getTypeName()); 
        return true; 
       } 

    } 
    return false; 
} 

但問題來檢查網絡連接是,當我試圖通過關閉PC主機的網絡連接,檢查在仿真器連接互聯網還是這個函數返回沒錯,是互聯網上公佈,而我已經確定是否與網絡不看好互聯網連接

我的問題是如何檢查互聯網連接連接關閉從PC主機的網絡連接
ConnectivityManager類的幫助是不可用?

+0

如果你正在使用mac按f8關閉仿真器上的互聯網,然後再試一次 – 2014-09-26 10:34:54

+0

不,我正在使用windows和genymotion模擬器 – MilapTank 2014-09-26 10:35:53

回答

-2

試試這個來檢測你的互聯網連接

public static boolean isInternetConnected(Context mContext) { 

      try { 
       ConnectivityManager connect = null; 
       connect = (ConnectivityManager) mContext 
         .getSystemService(Context.CONNECTIVITY_SERVICE); 

       if (connect != null) { 
        NetworkInfo resultMobile = connect 
          .getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 

        NetworkInfo resultWifi = connect 
          .getNetworkInfo(ConnectivityManager.TYPE_WIFI); 

        if ((resultMobile != null && resultMobile 
          .isConnectedOrConnecting()) 
          || (resultWifi != null && resultWifi 
            .isConnectedOrConnecting())) { 
         return true; 
        } else { 
         return false; 
        } 
       } 
      } catch (Exception e) { 
       e.printStackTrace(); 
      } 

      return false; 
     } 

下列權限添加到您的清單文件,

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
+0

你能看到我的問題嗎我有檢查連接使用'ConnectivityManager'不工作這就是爲什麼我有在這裏問,你檢查我的問題中只有兩種類型的連接我已檢查所有類型的連接 – MilapTank 2014-09-26 10:31:45

0

關閉無線網絡後,再次嘗試和數據package..hope這有助於。