기기에 인터넷이 있는지 여부를 확인하려면 다음 코드 라인을 참조하십시오.무선 네트워크를 통한 요청과 android의 모바일 네트워크
boolean hasInternet = false;
HttpURLConnection urlc = null;
try {
urlc = (HttpURLConnection)
(new URL("http://clients3.google.com/generate_204")
.openConnection());
} catch (IOException e) {
e.printStackTrace();
}
urlc.setRequestProperty("User-Agent", "Android");
urlc.setRequestProperty("Connection", "close");
urlc.setConnectTimeout(1500);
urlc.connect();
hasInternet = (urlc.getResponseCode() == 204 &&
urlc.getContentLength() == 0);
무선 인터넷 연결을 사용할 때 모든 것이 좋으며 hasInternet 값이 true입니다. 하지만 모바일 네트워크 공급자를 사용할 때 hasInternet 값은 항상 false이지만 모바일 브라우저의 모든 사이트를 열 수 있습니다. 무슨 문제가있는 것 같습니까?
이 대해 connecttimeout 늘려보십시오. 5 초 또는 10 초로 설정해보십시오. –
@RajenRaiyarela 10 초를 시도했지만 아무 것도 얻지 못했습니다! – Sina