android中的网络检查
我想检查android应用程序中的网络连接android中的网络检查,android,Android,我想检查android应用程序中的网络连接 public boolean isNetworkAvailable() { Context context = getApplicationContext(); ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkI
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;
}
public boolean isNetworkAvailable(){
Context=getApplicationContext();
ConnectionManager连接=(ConnectionManager)
getSystemService(context.CONNECTIVITY\u服务);
NetworkInfo[]info=connectivity.getAllNetworkInfo();
如果(信息!=null)
{
对于(int i=0;i
当我拔掉电脑中的网线时,程序崩溃了。但当我在Emulator中禁用飞行模式时,它正确地显示“网络不可用”。
如何进行实际检查?您是否在实际设备上进行了尝试 我从你的帖子中推断,你正在试用模拟器。
我认为emulator与系统的网络接口相连
因此,它可能会失败 我提议的其他更改:
NetworkInfo=connectivity.getActiveNetworkInfo()
如果(info.getState()==NetworkInfo.State.CONNECTED)
返回真值
使用Eclipse中的adb logcat、DDMS或DDMS透视图检查logcat并查看“程序崩溃”时生成的堆栈跟踪。