0

我有一个类负责将 JSON 发送到服务器,这个类扩展了 AsyncTask。但我无法处理连接错误。如果设备没有与互联网应用程序连接终止,如果应用程序处于飞行模式也终止。如何处理这些错误?

4

1 回答 1

0

只需添加这些方法:

public boolean isOnline() {
        ConnectivityManager cm = (ConnectivityManager)  getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo netInfo = cm.getActiveNetworkInfo();

        if (netInfo != null && netInfo.isConnectedOrConnecting()
                && cm.getActiveNetworkInfo().isAvailable()
                && cm.getActiveNetworkInfo().isConnected()) {
            return true;
        }
        return false;
    }

在启动 asyncTask 以获取数据之前调用它。这将检查设备是否连接到互联网。另外不要忘记在您的清单上添加权限:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
于 2013-11-15T03:19:43.777 回答