-4

我想检查设备中标签栏上的互联网连接,如果我的设备连接到 wifi 或移动网络,那么它应该进一步调用 api,否则应该显示一个对话框,请检查您的互联网连接,并且应用程序应该保持在同一页面上. 请帮助任何帮助将不胜感激。

4

1 回答 1

2
private boolean isNetworkAvailable() {
    ConnectivityManager connectivityManager 
          = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
    return activeNetworkInfo != null;
}

这是在 android 中检查互联网连接的示例代码。

您可能还需要添加用户权限

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

如果您想检查建立了哪个连接,请使用此代码段

private boolean networkConnection() {
    boolean wifiConnection = false;
    boolean mobileConnection = false;

    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo[] netInfo = cm.getAllNetworkInfo();
    for (NetworkInfo ni : netInfo) {
        if (ni.getTypeName().equalsIgnoreCase("WIFI"))
            if (ni.isConnected())
                wifiConnection = true;
        if (ni.getTypeName().equalsIgnoreCase("MOBILE"))
            if (ni.isConnected())
                mobileConnection = true;
    }
    return wifiConnection || mobileConnection ;
}
于 2012-07-03T06:42:07.183 回答