我有asynctask
从RestAPI请求JSON文件,问题出在webservice发送JSON数据之前,我的连接已丢失,并因此而获得错误。我已经ConnectivityManager
检查连接是否可以运行asynctask
来请求JSON。如何在asynctask
运行时处理?
这是我的ConnectivityManager
功能:
public bool isOnline()
{
ConnectivityManager cm = (ConnectivityManager)GetSystemService(ConnectivityService);
NetworkInfo activeConnection = cm.ActiveNetworkInfo;
return activeConnection != null && activeConnection.IsConnected;
}
我正在使用Visual Studio 2015和Xamarin构建Android App。
提前致谢
答案 0 :(得分:1)
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
/**
* Net Utils for android
*/
public class NetUtils {
/**
* @param context the context you're checking connectivity for
* @return true if the application can access the internet
*/
public static boolean hasConnectivity(Context context, boolean roamingOK) {
boolean hasConnectivity = true;
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = connectivityManager.getActiveNetworkInfo();
hasConnectivity = info != null && (info.isConnected() || (roamingOK && info.isRoaming()));
return hasConnectivity;
}
}
还在清单上添加权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />