2010-12-13 5 views
19

내 안드로이드 응용 프로그램에서 HTTP Post 요청을 통해 textalertapp.com에 액세스하려고합니다. 하지만 알 수없는 호스트 오류가 나타납니다. 아무도 내가이 문제를 해결하도록 도울 수 있습니까?자바 알 수없는 호스트 예외

12-13 01:30:16.058: WARN/System.err(473): java.net.UnknownHostException: textalertapp.com 
    12-13 01:30:16.088: WARN/System.err(473):  at java.net.InetAddress.lookupHostByName(InetAddress.java:513) 
    12-13 01:30:16.088: WARN/System.err(473):  at java.net.InetAddress.getAllByNameImpl(InetAddress.java:278) 
    12-13 01:30:16.088: WARN/System.err(473):  at java.net.InetAddress.getAllByName(InetAddress.java:242) 
    12-13 01:30:16.088: WARN/System.err(473):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:136) 
    12-13 01:30:16.099: WARN/System.err(473):  at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 
    12-13 01:30:16.099: WARN/System.err(473):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 
    12-13 01:30:16.099: WARN/System.err(473):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348) 
    12-13 01:30:16.108: WARN/System.err(473):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555) 
    12-13 01:30:16.118: WARN/System.err(473):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 
    12-13 01:30:16.118: WARN/System.err(473):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465) 
    12-13 01:30:16.118: WARN/System.err(473):  at com.textalert.alertCollection.getAlerts(alertCollection.java:46) 
    12-13 01:30:16.118: WARN/System.err(473):  at com.textalert.alertsList$1.run(alertsList.java:81) 
    12-13 01:30:16.128: WARN/System.err(473):  at java.lang.Thread.run(Thread.java:1096) 

코드,

HttpClient client = new DefaultHttpClient(); 
       String postURL = "http://textalertapp.com/androidCode/?api=AlertManager&method=getAlerts"; 
       HttpPost post = new HttpPost(postURL); 

       List<NameValuePair> params = new ArrayList<NameValuePair>(); 
       params.add(new BasicNameValuePair("user", "kris")); 
       params.add(new BasicNameValuePair("pass", "xyz")); 
       UrlEncodedFormEntity ent = new UrlEncodedFormEntity(params,HTTP.UTF_8); 
       post.setEntity(ent); 
       HttpResponse responsePOST = client.execute(post); 
       HttpEntity resEntity = responsePOST.getEntity(); 
       if (resEntity != null) {  
        Log.i("RESPONSE",EntityUtils.toString(resEntity)); 
       } 
+0

예외가 발생하는 소스 코드를 제공해 주시겠습니까? – Thomas

답변

53
<uses-permission android:name="android.permission.INTERNET"></uses-permission> 

방금 ​​manifest 파일에이 행을 추가했습니다. 문제가 해결되었습니다.

+0

쿨! 이것은 내가 생각하지 않은 경우입니다. – AlexR

+0

다음이 대답을 수락하십시오. –

+1

이것은 정확합니다. 사용 권한을 놓쳤습니다. 문제를 해결할 것입니다 .... 코드를 확인했습니다 ... – viv

6

이이 호스트를 알 수없는 것을 의미한다 즉 존재하지 않습니다 또는 액세스 할 수 없습니다. 다시 IP를 확인하고 장치에서이 IP를 가져올 수 있는지 확인하십시오. 아마도이 IP는 로컬 네트워크에 존재하며 외부에서 액세스 할 수 없습니다.

IP가있는 경우 방화벽 정의를 확인하십시오. 방화벽으로 인해 동일한 효과가 발생합니다.

+1

호스트가 존재합니다 ... 확인했습니다. –

+0

+1이 연결되어 있는지 확인하십시오. Android 기기의 경우 Wi-Fi 연결 또는 다른 형태의 연결이 필요하다는 것을 종종 잊지 마십시오 – BlackHatSamurai

4

이전에 완벽하게 작동 한 URL에서 콘텐츠를 가져 오는 중 "java.net.UnknownHostException"오류가 발생하기 시작했습니다.

잠시 동그라미를 돌아 다니면서 수동으로 내 프로젝트의/bin 폴더를 삭제하고 Eclipse에서 프로젝트를 정리 (프로젝트 -> 정리)하여이 오류를 수정했습니다.

관련 문제