您使用的代码仅用于检查您是否连接到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();
}