当我想访问我的web服务时,我的android应用程序中出现了UnknownHostException。
我在AndroidManifest.xml中插入了一个<uses-permission android:name="android.permission.INTERNET" />
。
如果我通过浏览器访问我的网络服务链接,一切都会好起来的。
我在C:WindowsSystem32driversetchosts
文件中键入了域名和IP。
但如果我通过模拟器运行应用程序,我会得到一个未知主机异常。据我所知,模拟器应该使用我的系统文件来连接服务器。。。但是,实际上并没有。。请帮助解决这个问题。
在我的情况下,我在登录VPN时启动模拟器时遇到了这个问题。注销VPN没有任何效果,直到我退出模拟器并重新启动。很容易测试您的模拟器是否没有正确解析名称-只需转到模拟器浏览器并键入网站主机名(谷歌除外)。
使用等域解决的问题
CustomHttpClient.executeHttpPost("http//192.168.1.2/path");
一切都很好用它。我不能在android文件系统中编辑主机文件,即使有root权限。所以,如果你有类似的问题——好的解决方案是使用IP地址,而不是域。
感谢Haresh Chaudhary
这里有一个非常好的连接Web服务的教程
您将在本教程中完成这一行
CustomHttpClient.executeHttpPost("http//192.168.1.2/path");
此处path表示文件的路径,该文件位于htdocs
中。