我尝试了多种方式来检查我的 android 模拟器中的 Internet 连接
ConnectivityManager conMgr = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info= conMgr.getActiveNetworkInfo();
if(info != null || info.isConnected()) {
Log.v("NetworkInfo","Connected State");
}
else{
Log.v("NetworkInfo","Not Connected state");
Log.v("Reason",info.getReason());
}
即使我在我的系统中禁用 Internet 连接,我的代码似乎显示已连接状态,所以我猜这可能有效
if ( conMgr.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED
|| conMgr.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED ) {
Log.v("Congr","Connection Present");
}
else if ( conMgr.getNetworkInfo(1).getState() == NetworkInfo.State.DISCONNECTED
|| conMgr.getNetworkInfo(0).getState() == NetworkInfo.State.DISCONNECTED) {
Log.v("conMgr"," No Connection");
}
但即使我断开互联网电缆,上面的代码也会显示“连接存在”。.请帮助找到正确的方法来做到这一点。我的清单文件中有 ACCESS_NETWORK_STATE 和 INTERNET 权限