我试过运行一个通过HTTP Request对象从互联网上获取JSON数据的应用程序,它显示了
java.net.UnknownHostException: Unable to resolve host “api.github.com”: No address associated with hostname
作为每次试验的例外情况。后来我通过运行浏览器检查了AVD中的互联网连接。我无法访问任何网站。
我是否需要在 AVD Manager 中更改任何设置,以便我可以通过虚拟设备访问Internet。
帮帮我,谢谢你。
答案 0 :(得分:1)
就我而言,当模拟器无法连接到Internet时,我收到了此类错误。
((尝试使用仿真器浏览互联网以测试其互联网连接。在https://teamtreehouse.com/community/unknownhostexception-unable-to-resolve-host-apidarkskynet-no-address-associated-with-hostname中建议)
答案 1 :(得分:0)
如果这是您的确切错误,我会从中看到错误。
Android API与任何现代浏览器不同,需要明确声明http
或https
。
您必须确保URL包含您可以通过手动将其添加到URL中执行的任一协议,或者在创建排球请求之前添加此代码:
if(!url.startsWith("http://") && !url.startsWith("https://")){
url = "http://" + url;
}
您可以使用HTTPS替换它,但并非所有网站都使用https,因此将其默认为HTTP以避免错误,这通常是个好主意。如果您提供https但没有HTTPS证书,则该网站很可能会拒绝该连接。