该设备确实具有网络连接(WiFi和3G)。
调用gethostbyname()会返回NULL,错误为111(ECONNREFUSED)。
同样的调用在osx和windows上运行正常。
可能是什么问题?
最佳,
答案 0 :(得分:2)
您应该在AndroidManifest.xml中添加使用Internet的权限:
<uses-permission android:name="android.permission.INTERNET"/>
答案 1 :(得分:0)
问题很可能是设备上配置的DNS服务器设置错误或错误。一定要检查一下。这很可能是您本地WiFi网络的一个问题 - 可能没有本地DNS服务器。
也许你也可以尝试禁用WiFi,因为DNS解析应该在你的移动网络中自动运行。
答案 2 :(得分:0)
ECONNREFUSED
表示设备上的DNS解析器可能已尝试故障转移到TCP / IP(而不是UDP),因为答案太长而无法适应正常的UDP响应分组。
如果配置的DNS服务器不支持TCP上的入站DNS请求,则会收到该错误。
客户端应用程序通常无法从UDP套接字获取ECONNREFUSED
,因为它们是无状态的。