无法解析主机“ <url here>”;没有与主机名关联的地址[关闭]


159

在我的用于读取RSS链接的Android应用程序中,出现此错误:

java.net.UnknownHostException:无法解析主机“ example.com”;没有与主机名关联的地址。

在模拟器中,我可以通过浏览器连接到Google。请帮助我解决此问题。


您能否提供您收到此错误的网址
Sunil Kumar Sahoo

15
你有INTERNET权限吗?
菲利克斯(Felix)

@felix:我在浏览器中检查了Internet连接。它可以正常工作,如何在我的应用程序中启用?
bejoy乔治

3
确保您的互联网连接已打开。
user609239 2011年

6
检查您的WiFi连接
:)

Answers:


193

您可能没有INTERNET权限。尝试将它添加到您的AndroidManifest.xml文件中</manifest>

<uses-permission android:name="android.permission.INTERNET" />

注:以上不必须的前右侧</manifest>的标签,但这是把它的好/正确的位置。

注意:如果此答案对您没有帮助,请阅读其他答案!


200
检查您的WiFi连接
:)

120

我也在模拟器中看到了这个问题。就我而言,这是由于启动仿真器,然后使计算机进入睡眠状态或更改了网络连接(从工作场所转到家中等),然后尝试再次使用同一仿真器而引起的。在这种情况下,关闭并重新启动仿真器可以解决该问题。


那就是问题的真正根源
user606669

1
我遇到了同样的问题,但是关闭/重新启动模拟器并没有解决任何问题。但是,连接到我公司的VPN确实……
甜甜圈

这也是我的问题,尝试一些新的库来下载文件。在库文档和网络上搜索了一个小时,因为它无法下载文件。.原来是模拟器连接问题,哈哈。浪费时间,但是除了大声笑,我该怎么办。感谢您保存我的一天
Komang Sidhi Artha

看到这个答案,老实说,我不认为这将解决我的问题。谢谢你,埃里克!仍然好奇您如何设法解决这个问题
Roshan

57

由于是WiFi错误wifi disable or not properly connected.

只需重新连接wifi就可以解决问题。


41

无法解析主机“”;没有与主机名关联的地址

您必须在清单上检查以下代码:

<uses-permission android:name="android.permission.INTERNET" />

至少对我来说最重要的: -

在您的移动设备上启用了wifi连接或Internet连接


1
这对我有所帮助...谢谢...在模拟器上检查WiFi
Hamreen Ahmad

我的网络未启用... opps .. !!! 感谢您的检查..有时一个人会犯下最愚蠢的错误
Aman Satija

10

有时,尽管您添加<uses-permission android:name="android.permission.INTERNET" />了AndroidManifest并具有WiFi连接,但仍可能引发此异常。就我而言,我已经关闭了WiFi,然后又重新打开了它。这样就解决了错误。奇怪的解决方案,但有时它可行。


刚发生在我身上。工作正常,然后突然出现此问题。WiFi断断续续地解决了。奇!
EnduroDave 2015年

9

"" 看来您正在尝试解析此主机,这是无效的。

检查rss URL

更新 以下是可能性

1您的浏览器配置了代理,应用未配置

System.setProperty("http.proxyHost", "my.proxyhost.com");
System.setProperty("http.proxyPort", "1234");

2您的浏览器可以访问互联网。不是应用

如果URL受保护,则3可能是SSL问题


我在浏览器中输入了我的网址并可以访问。
bejoy乔治

您在浏览器中输入了什么?
Jigar Joshi

检索数据的URL。它指向xml页面。
bejoy乔治

但似乎您的应用程序没有尝试访问该url,因此从错误消息中似乎正在查看它""
Jigar Joshi

1
如何使用-System.setProperty(“ http.proxyHost”,“ my.proxyhost.com”)配置我的应用程序;System.setProperty(“ http.proxyPort”,“ 1234”);
bejoy乔治,

7

我遇到过同样的问题。我的虚拟设备在该设备的顶部栏中显示了划线的WiFi图标。我重新启动了虚拟设备,一切恢复正常。


5

可能是由于以下原因:-

  1. 您在清单文件中没有INTERNET权限。如果是这样,请使用此语句<uses-permission android:name="android.permission.INTERNET" />

  2. 或者您已连接到网络,但您的Internet连接不起作用。就像您已连接到Wi-Fi,但没有Internet连接或手机上的移动数据处于打开状态,但手机上没有数据连接一样。

第二点很有趣,它不是假设,我在最后测试了相同点。

希望这个能对您有所帮助

总结


4

这不是您的错,我有时会在模拟器处于怪异状态时发生这种情况。刚重启模拟器对我有帮助。


4

在模拟器上有时,我必须启动浏览器,然后我的应用才能访问Internet。



2

如果您正在模拟器上运行该应用程序,请确保该应用程序已正确连接到互联网。如果不是,最简单的解决方法是重新打开仿真器或创建新设备。



2

无法解析主机“”;没有与主机名关联的地址

我遇到了这个问题,并以此方式解决了。更改

http://主机名/abc/def/ghi/name.php

http://ipaddress/abc/def/ghi/name.php // http://97.68.XX.YY/abc/def/ghi/name.php

我通过这种方式解决了这个问题...您必须提供服务器IP地址而不是主机名/服务器名。

请尝试这样做并评论您的反馈。


1
好吧,这就像在有人问为什么自己的车不工作时建议坐公共汽车。毕竟,主机名的目的之一是基础IP地址可以随时更改。
曼努埃尔



1

我遇到了同样的问题,这是因为模拟器以某种方式进入了飞行模式,一旦禁用,我的应用程序就可以正常工作了:-)我尝试了所有操作,重新构建,清理+构建并重新启动android studio并重新启动计算机,甚至重新安装android studio ..

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.