我有以下代码,它会在调用AsyncTask方法“Task”之前检查是否有互联网连接,然后从互联网获取信息。只有当手机处于飞行模式或未连接到外部无线互联网(即没有使用手机计划内置的互联网)时,它才能正常工作。
如果手机连接到外部无线调制解调器但该调制解调器未连接到互联网,则会强制关闭!
并且
如果手机连接到外部无线调制解调器但该调制解调器未连接到互联网,则会强制关闭!
if (isOnline()) {
new Task().execute();
} else {
Toast.makeText(this, "There seems to be no internet access, please try again later!", Toast.LENGTH_LONG).show();
}
并且
public boolean isOnline() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting()) {
return true;
}
return false;
}
有没有什么“行之有效”的方法来解决这个问题?
谢谢,
迈克。