2014-09-26 3 views
3

я пытаюсь проверить подключение к Интернету в моем андроида приложениепроверка интернет в эмуляторе 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
ConnectivityManager класса помощи в определении того, связанно с сетью не о подключении к интернету

мой вопрос состоит в том, чтобы проверить подключение к интернету не доступно ?

+0

Если вы используете mac press f8, чтобы отключить интернет на эмуляторе и повторите попытку –

+0

no Я использую окна и эмулятор genymotion – MilapTank

ответ

-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

0

Попробуйте еще раз после выключения Wi-Fi и данные package..hope это помогает.