2012-10-19 30 views
0

我正在创建一个应用程序来检查移动网络的状态。检查移动网络连接和NetworkInfo.State SUSPENDED表明什么?

我使用NetworkInfo.State.CONNECTED来检查连通性。它在我的模拟器上正常工作。 但是,当用户拨打电话时,网络信息状态为暂停(但用户连接到网络)暂停的代码表示什么?

另外,当我在设备上运行该应用程序时,网络状态被指定为DISCONNECTED。但是用户连接到网络并且可以接听/拨打电话。在这种情况下,NetworkInfo.getReason()以datadisconnected的形式给出。

有人可以帮助遇到o检查到网络的移动连接。

在此先感谢。

回答

1
public class NetWorkCheck{ 
    ConnectivityManager connectivityManager; 
    NetworkInfo wifiInfo, mobileInfo, lanInfo; 


    public Boolean checkNow(Context con){ 

     try{ 
      connectivityManager = (ConnectivityManager) con.getSystemService(Context.CONNECTIVITY_SERVICE); 
      wifiInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI); 
      mobileInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 


      if(wifiInfo.isConnected() || mobileInfo.isConnected()) 
      { 
       return true; 
      } 
     } 
     catch(Exception e){ 
      System.out.println("CheckConnectivity Exception: " + e.getMessage()); 
     } 

     return false; 
    } 
}