java - 检查设备是否有互联网连接

标签 java android xml connection

我想检查设备是否有互联网连接。我找到了很多解决方案,但我无法在示例中执行类似的操作:

if(device has Internet connection){
    webview.loadUrl("http://the.url.com")
}
else{
    Toast.makeText(context, text, duration).show()
}

最佳答案

将此方法放入要检查连接性的类中:

public static boolean isOnline(Context context) {
    ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    if (netInfo != null && netInfo.isConnected()) {
       return true;
    }
    return false;
}

然后,当您需要检查连接时,请执行以下操作(使用您的示例):

if(isOnline(getApplicationContext()){
    webview.loadUrl("http://the.url.com")
}
else{
    Toast.makeText(context, text, duration).show()
}

您还可以在类中创建该方法并始终从那里使用它,例如ExampleClass.isOnline()。

不要忘记将其添加到您的 AndroidManifest 中:

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

关于java - 检查设备是否有互联网连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17711079/

相关文章:

java - Java中静态类的初始化

android - 使用 Activity 的多重继承

android - OpenSL 中的 RecorderObject 没有实现在 Android 上设置音量或配置的接口(interface)

java - 在 android 中使用 ORMLite 保存一个集合类

xml - 有没有可以替代 CGI.pm 的 HTML 生成函数的小型 Perl XML 解析器?

java - 使用另一个面板的值刷新 JPanel

java - 无法使用 Apache POI 读取 xls 文件的单元格颜色

java - 用 Jaxb 重复标签

java - Chrome 不会找到 json 文件的长本地文件路径,而 Windows 资源管理器会找到它

xml - 针对 2 个 XSD 验证简单 XML - XMLCopyEditor