我从 Android 收到“主机是未知服务器:80”的错误。我正在尝试从虚拟机上的 Android Emulator 访问服务器上的 WCF Rest 服务。是否支持此场景?顺便说一句,我可以访问该服务的帮助页面,所以我知道该服务正在运行。我可以从那个虚拟机访问它。
任何帮助表示赞赏。我的开发环境是 Windows 7 64 BIT,使用最新的 Eclipse 版本。这些服务位于 Win 2008 R2 机器上。
我的猜测是您错误地配置了主机名。
根据错误消息,您似乎提供了“:80”作为主机名或 IP 地址。如果平台认为该字符串应该是 DNS 名称并尝试进行 DNS 查找,则查找将失败,从而导致某种“未知主机”诊断。
如果这就是问题所在,那么有几个观察结果。
如果您尝试在静态配置文件(或其他任何内容)中引用“此设备”,您可以使用其主机名或 IP 地址(如果您知道它们),或者环回接口的 IP 地址(很可能) “127.0.0.1”。空字符串可能不起作用。
端口号(例如“80”)不应包含在主机名/IP 地址中……除非您在解析主机字符串之前将其解析出来。
一旦此错误的潜在原因是忘记包含互联网许可或未将其放在正确的位置。确保 manifest.xml 中有以下应用程序标记之外的内容:
<uses-permission android:name="android.permission.INTERNET"/>
我不得不使用10.0.2.2 替代 IP,因为模拟器使用 localhost IP。