android我的设备与wifi连接但如何连接wifi但这些没有互联网连接
以下是我的代码,我试图检查是否没有互联网连接
public static boolean isConnectedWifi(Context context) { NetworkInfo info=null; if(context!=null){ info= IsNetConnectionAvailable.getNetworkInfo(context); } return (info != null && info.isConnected() && info.getType() == ConnectivityManager.TYPE_WIFI); }
当没有互联网访问时,它总是返回true
解决方法
您使用的代码仅用于检查您是否连接到wifi.它不会检查wifi是否缓慢. (没有互联网意味着连接缓慢).
我试着使用这段代码.在这里,我尝试点击google.com并设置了连接超时值.
如果这里互联网速度很好,那么返回的结果是200.所以我检查结果代码是否为200.如果没有,我会显示网络连接速度慢的警报.在asyntask中使用它,onPostExecute()检查返回结果的值.
HttpURLConnection urlc = null; try { urlc = (HttpURLConnection) (new URL("http://www.google.com") .openConnection()); } catch (MalformedURLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } urlc.setRequestProperty("User-Agent","Test"); urlc.setRequestProperty("Connection","close"); urlc.setConnectTimeout(1000); // choose your own timeframe urlc.setReadTimeout(2000); // choose your own timeframe try { urlc.connect(); // returning connection code. return (urlc.getResponseCode()); } catch (IOException e1) { e1.printStackTrace(); }