안드로이드 초보 개발자입니다.
웹서버에서 문자열을 받아서 처리하는 간단한 앱을 제작중인데요...
04-05 19:03:24.537: W/System.err(6139): org.apache.http.conn.ConnectTimeoutException: Connect to /xxx.xxx.xxx.xxx:80 timed out
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:147)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:363)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
04-05 19:03:24.537: W/System.err(6139): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
04-05 19:03:24.537: W/System.err(6139): at com.xxx.xxx.utils.HttpUtils.doGet(HttpUtils.java:38)
아래는 소스입니다.
public static String doGet(String strUrl, String strEncoding) {
String strResponse = "";
try{
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(strUrl);
get.setHeader("Connection", "Keep-Alive");
HttpParams params = client.getParams();
HttpConnectionParams.setConnectionTimeout(params, 5000);
HttpConnectionParams.setSoTimeout(params, 5000);
HttpResponse response = client.execute(get);
if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
strResponse = EntityUtils.toString(response.getEntity(), strEncoding);
}
}catch(Exception e) {
e.printStackTrace();
}
return strResponse;
}
웹 사이트에서 응답 문자열을 받아서 처리하려고 하는데요...
가끔 가다가 ConnectTimeoutException 또는 SocketTimeoutException 이 발생합니다.
서버는 정상이구요, 브라우저에 직접 URL을 넣으면 매번 정확히 나오는데..(이것때문에 몇일동안 삽질중...ㅠㅠ)
고수님들... 답변 부탁드립니다...^^