在android中缺少/etc/resolv.conf

时间:2014-09-11 10:52:12

标签: android go

我将我的Go源代码交叉编译为Arm以在Android中运行。该程序在Android设备的终端中运行,但是我收到一条错误消息,指出缺少/etc/resolv.conf。我的程序在进行http调用时严重依赖net / http库。

如何在Android中处理此错误?

1 个答案:

答案 0 :(得分:4)

截至目前,您无法使用内置网络/ http连接到主机名,请查看此issue

您可以使用的解决方法很少。

  1. 如果您具有超级用户访问权限,则会在您的程序启动时生成/etc/resolv.conf,丑陋但简单易行。

  2. 在某处存储resolv.conf并修补http://golang.org/src/pkg/net/dnsclient_unix.go#L169以使用该自定义路径。

  3. 修补程序$GOROOT/src/pkg/net/dnsconfig_unix.go通过执行getprop net.dns1getprop net.dns2来获取名称服务器。

  4. https://gist.github.com/ernesto-jimenez/8042366

  5. 实施完整补丁
相关问题