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

3

我正在开发一个使用互联网的项目,我的问题是如何检查应用程序是否连接到互联网。 我使用了以下代码,但出现了错误。

我正在开发一个使用互联网的项目,我的问题是如何检查应用程序是否连接到互联网。 我使用了以下代码,但出现了错误。

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");
    }
}

1
什么错误?请将其添加到您的问题中。 - MByD
3个回答

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" />

0

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"/>

希望能对你有所帮助...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接