Android,UnknownHostException:www.google.com,在设备上,而不是模拟器

时间:2011-07-25 19:31:43

标签: java android google-api-java-client

我正在使用google api java客户端连接到Android应用中的Google文档。 有一段时间我得到以下异常:

UnknownHostException: www.google.com

代码:

transport = AndroidHttp.newCompatibleTransport();
ClientLogin authenticator = new ClientLogin();
authenticator.authTokenType = "writely";
authenticator.username = username.getText().toString();
authenticator.password = password.getText().toString();
authenticator.transport = transport;
authenticator.authenticate().getAuthorizationHeaderValue();

设备重置会清除异常,但是是必要的。 我怀疑是DNS缓存并尝试过但没有工作。据我所知,我不在代理人后面。

Security.setProperty("networkaddress.cache.ttl","0");
System.setProperty("networkaddress.cache.ttl","0");
System.setProperty("networkaddress.cache.negative.ttl","0");
System.setProperty("net.eth0.dns1","8.8.8.8");
System.setProperty("net.dns1","8.8.8.8");

上次发生的是今天早上当一个网络连接“死亡”时,单元格自动获得第二个,尝试执行ClientLogin但是因异常而失败。

为了说清楚,我在谈论DEVICE(htc欲望高清),而不是模拟器 提前谢谢。

2 个答案:

答案 0 :(得分:0)

将此行添加到 AndroidManifest.xml 文件中,紧跟在<manifest>代码之后和<application>代码之前:

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

答案 1 :(得分:-2)

我每天遇到这个问题。我认为这是模拟器中的一个错误。重置仿真器后,它再次工作,它从未发生在真实设备上。

编辑:绝对是模拟器中的一个错误。见thread。 StackOverflow上还有一些关于这些仿真器连接问题的帖子。