我正在尝试通过我的Android应用程序的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 :(得分:53)
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
我刚在清单文件中添加了这一行。问题解决了
答案 1 :(得分:6)
这意味着您的主机未知,即不存在或无法访问。再次检查IP并检查是否可以从您的设备获取此IP。这个IP可能存在于您的本地网络中,无法从外部访问。
如果IP存在,请检查防火墙定义。防火墙会产生同样的效果。
答案 2 :(得分:4)
从刚刚完美运行的网址中提取内容时,我刚开始收到“java.net.UnknownHostException”错误。
在圈了一段时间之后,我手动删除了我的项目的/ bin文件夹,并在Eclipse中清理了项目(Project - &gt; Clean),修复了这个错误。