如何在应用程序中检查互联网连接

时间:2011-03-28 05:09:01

标签: android

我开发使用互联网的项目我的问题是检查应用程序是否连接到互联网 我使用了以下代码,但生成了错误

public void onClick(View v)
{
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo info= cm.getActiveNetworkInfo();
    boolean a= cm.getActiveNetworkInfo().isConnectedOrConnecting();
    if(a==true){
        Toast("Connected");
    }
    else{
        Toast("Not Connected");
    }
}

3 个答案:

答案 0 :(得分:11)

请尝试以下功能。如果设备中有互联网连接,则它将返回true,否则将返回false。

public static boolean CheckInternet(Context context) 
{
    ConnectivityManager connec = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    android.net.NetworkInfo wifi = connec.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    android.net.NetworkInfo mobile = connec.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);

    if (wifi.isConnected()) {
        return true;
    } else if (mobile.isConnected()) {
        return true;
    }
    return false;
}

在Android清单文件中添加权限。

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

答案 1 :(得分:0)

如果你还没有在AndroidManifest文件中添加它。

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

点击这里,
How can I monitor the network connection status in Android?

答案 2 :(得分:0)

try {
ConnectivityManager conMgr = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); 
NetworkInfo info= conMgr.getActiveNetworkInfo(); 

    if(info != null && info.isConnected()) 
    {
        //Internet is there
    }
    else{
        //Internet is not there
    }
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
希望它能帮到你......