我想检查android应用程序中的网络连接。所以我插入了以下代码
public boolean isNetworkAvailable() {
Context context = getApplicationContext();
ConnectivityManager connectivity = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
{
for (int i = 0; i < info.length; i++)
{
if (info[i].getState() == NetworkInfo.State.CONNECTED)
{
return true;
}
}
}
return false;
}
当我在计算机中移除网线时程序崩溃。但是当我在模拟器中禁用飞行模式时,它正确显示“网络不可用”。 我们如何实际检查?
答案 0 :(得分:0)
您是否在实际设备上试用过它。
我的推断是,您正在尝试使用模拟器 我认为模拟器链接到系统的网络接口 因此它可能会失败。
其他改变我的建议:
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info.getState() == NetworkInfo.State.CONNECTED )
return true