java - 在整个应用程序中检查互联网连接的最佳方式

标签 java android class internet-connection

我想检查整个应用程序的互联网连接。我已经用谷歌搜索了,但结果是每个人都在每个类中创建一个实例方法并尝试检查互联网连接。我的计划是用静态方法创建一个类并在不实例化我的类的情况下检查它。 这样做是个好主意吗?或者我应该尝试另一种方式吗?我的计划是做这样的事情:

public class CheckInternetConnecting {

    public static boolean isOnline(Context context) {
         ConnectivityManager cm =
            (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

        return cm.getActiveNetworkInfo() != null &&
            cm.getActiveNetworkInfo().isConnectedOrConnecting();
    }
}

最佳答案

您还可以通过以下方式检查互联网连接..

public boolean testConnection() {

    try {
        boolean connectionStatus=false;

        InetAddress addr=InetAddress.getByName("8.8.8.8");//google dns 8.8.8.8


        connectionStatus=addr.isReachable(1000); // 1second time for response

    }                               
    catch (Exception e) {
        e.printStackTrace();
        System.out.println(e.toString());
    }

    return connectionStatus;
}

关于java - 在整个应用程序中检查互联网连接的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14959410/

相关文章:

java - 在 Java 中获取屏幕大小

java - JEdi​​torPane 在显示特定的非动画 GIF 时 CPU 使用率较高

Assets 文件夹中的android数据库

JavaMail API 连接 Mercury 邮件服务器错误

java - 使用带有自动增量字段的准备语句

android - Android data.wasTapped 上的 cordova fcm 插件无法正常工作

java - 保存实例以避免在选项卡之间切换时丢失数据

python - 是否可以重载 Python 赋值?

PHP 使用 $this->variable 作为类方法参数默认值

c++ - 如何正确重载 << 运算符以返回 int 值?