检查移动网络连接& NetworkInfo.State SUSPENDED表示什么?

时间:2012-10-19 10:15:31

标签: android networking

我正在创建一个应用程序来检查移动网络的状态。

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

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

有人请帮助我们检查移动网络连接。

提前致谢。

1 个答案:

答案 0 :(得分: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;
    }
}