如果使用主机名代替IP地址,则会在Android应用程序中引发UnknownHostException

问题描述

|| 我有以下代码,用于将请求发送到服务器。
String inputXML = createInputXML(searchText);
HttpClient httpclient = new DefaultHttpClient();
String url = \"http://mysite.com/action\";//Works fine if I use IP address directly,for eg:http://1.2.3.4/action
HttpPost httppost = new HttpPost(url);
HttpResponse response=null;
StringEntity se = null;
try {
    se = new StringEntity(inputXML,HTTP.UTF_8);
} catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
se.setContentType(\"text/xml\");  
httppost.setHeader(\"Content-Type\",\"application/xml;charset=UTF-8\");
httppost.setEntity(se);  
try {
    response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
当我在模拟器上运行程序时,我在行上收到UnKnownHostException
response = httpclient.execute(httppost);
如果我直接使用ip地址而不是主机名,则请求发送正确。 请注意以下几点: 我正在使用Android 2.3.3 我在清单xml中添加了“ 2” 代理设置在仿真器的APN中更新。 使用模拟器中的浏览器,我可以访问带有其主机名的网站。 知道为什么这会引起问题吗?     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)