public static boolean isNetworkAvailable(Context context)
{
ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
if (ni == null)
{
// There are no active networks.
return false;
}
else if(ni.isAvailable() && cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == State.CONNECTED)
{
Log.i("NetworkState","Wifi Connected");
return true;
}
else
{
return false;
}
}
true
即使我连接到没有 Internet 连接的路由器,此方法也会返回。我应该怎么做才能决定我是否能够连接到互联网。
或者我应该先 Ping 到我的服务器或 google.com 以确定我是否有互联网?