如何处理 Ion(android 库)没有互联网连接?

How to handle no Internet connection with Ion (android library)?

我在 Android 上使用 Ion Library(Android 异步网络和图像加载)。执行通用 HTTP 请愿书的典型代码类似于:

Ion.with(context)
.load("http://example.com/thing.json")
.asJsonObject()
.setCallback(new FutureCallback<JsonObject>() {
    @Override
    public void onCompleted(Exception e, JsonObject result) {
        // do stuff with the result or error
    }
});

没有互联网连接时,我不知道该怎么办。我正在禁用 wifi 和 3G 的 phone 上进行调试,并且我没有收到任何回调异常。我希望立即出现异常,我认为它必须立即失败。

我必须如何处理这种情况?提前致谢

ConnectivityManager 的 getActiveNetworkInfo() 方法 returns 表示它可以找到的第一个连接的网络接口的 NetworkInfo 实例,如果 none 个接口已连接,则为 null。检查此方法 returns null 是否足以判断互联网连接是否可用。

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

您还需要:

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

在您的 android 清单中。