我已经成功地为它构建了curl和jni包装。但是,当我在模拟器中执行代码时,我得到“无法解析主机'www.google.com'”。如果我提供IP而不是DNS名称,则“无法连接到主机”。我不在代理之后,所以我已经消除了这种可能性。curl无法连接到Android的互联网
我不确定在模拟器中是否有一个设置允许本机应用程序与互联网进行通信。任何帮助,将不胜感激。我已经验证通过adb外壳存在与互联网的连接。
#NC -z -v www.google.com 80
DNS FWD/REV不匹配:www.l.google.com = vw-in-f147.1e100.net
DNS FWD/REV mismatch:www.l.google.com!= vw-in-f103.1e100.net
DNS fwd/rev mismatch:www.l.google.com!= vw-in-f106.1e100.net
DNS fwd/rev mismatch:www.l.google.com!= vw-in-f105.1e100.net
DNS fwd/rev mismatch:www.l.google.com!= vw-in-f99.1e100.net
DNS fwd/rev mismatch:www.l.google.com!= vw-in-f104.1e100.net
www.l.google.com [74.125.113.147] 80(www)打开
谢谢。
这让我过去了连接问题。现在我遇到了解决DNS问题,如果我提供了一个命名的主机。如果我提供和IP,它工作正常。我重新编译curl以使用c-ares,现在出现以下错误“无法解析主机:www.google.com(无法联系DNS服务器)”。它不能是仿真器配置,因为“nc”命令解析主机。所以我认为我缺少应用程序设置中的其他内容。如果有人设法让android在curl工作,请帮忙。谢谢。 – mks 2012-02-07 23:45:59