2010-12-13 21 views
19

J'essaie d'accéder à textalertapp.com via HTTP Post demande de mon application android. Mais je reçois une erreur d'hôte inconnue. Quelqu'un peut-il m'aider à résoudre ce problème?Java inconnu hôte exception

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) 
code

est

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

Pourriez-vous fournir le code source à l'origine de l'exception, s'il vous plaît? – Thomas

Répondre

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

Je viens d'ajouter cette ligne dans le fichier manifeste. Problème résolu

+0

Cool! C'est le cas auquel je n'ai pas pensé. – AlexR

+0

Acceptez cette réponse alors. –

+1

Ceci est correct, vous avez manqué les permissions, va résoudre votre problème ...., j'ai vérifié avec le code ....... – viv

6

Cela signifie que votre hôte est inconnue, à savoir n'existe pas ou est pas accessible. Vérifiez à nouveau votre adresse IP et vérifiez si vous pouvez obtenir cette adresse IP depuis votre appareil. Probablement cette adresse IP existe dans votre réseau local et n'est pas accessible de l'extérieur.

Si IP existe, vérifiez les définitions de pare-feu. Le pare-feu provoque le même effet.

+1

L'hôte existe ... J'ai vérifié. –

+0

+1 pour s'assurer qu'il y a une connexion. Avec les appareils Android, on oublie souvent qu'il faut une connexion wifi ou une autre forme de connectivité – BlackHatSamurai

4

Je viens de commencer à recevoir l'erreur "java.net.UnknownHostException" lors de l'extraction du contenu d'une URL qui fonctionnait parfaitement. Après avoir tourné en rond pendant un certain temps, j'ai supprimé manuellement le dossier/bin de mon projet et j'ai nettoyé le projet dans Eclipse (Projet -> Nettoyer), ce qui a corrigé cette erreur.