Android 安卓-在安卓手机上没有操作的情况下,在特定时间后出现未知的异常

Android 安卓-在安卓手机上没有操作的情况下,在特定时间后出现未知的异常,android,unknown-host,Android,Unknown Host,我使用“HttpClient”和“URLConnection”从服务器获取jsondat,当应用程序启动时,它工作正常。问题是,当我离开手机超过20分钟而没有进行任何操作时,我启动应用程序,它会在logcat处给我“UnknownHostException”,并且没有验证数据响应。这一次,通知栏上的wifi图标显示了良好的无线连接质量 所以我关闭了应用程序,并重新启动了很多次,然后一切正常 我在谷歌上搜索了很多,想知道如何解决这个问题,但都失败了。我真的很困惑。我得到了这个-,我不确定它是否是由

我使用“HttpClient”和“URLConnection”从服务器获取
json
dat,当应用程序启动时,它工作正常。问题是,当我离开手机超过20分钟而没有进行任何操作时,我启动应用程序,它会在
logcat
处给我“UnknownHostException”,并且没有验证数据响应。这一次,通知栏上的wifi图标显示了良好的无线连接质量

所以我关闭了应用程序,并重新启动了很多次,然后一切正常

我在谷歌上搜索了很多,想知道如何解决这个问题,但都失败了。我真的很困惑。我得到了这个-,我不确定它是否是由这个bug触发的

我从互联网上尝试了很多方法,比如“关闭和打开wifi密码”,但都不起作用。我只是想知道这是一个特定的手机或安卓系统的错误,或是我的代码有什么问题,任何建议都非常感谢

2012.12.10更新

我试着在每次2秒后再次打电话,总共5次等待手机从睡眠中醒来,我的手机工作正常

// all these codes are running on a worker thread (not main thread)
int timeout = 5;

if (json == null) {
  do {
     Thread.sleep (2000);
     // call it agina...
     if (json != null) {
        break;
     }
  } while (--timeout >= 0);

}

if (json == null) {
    // do something if it's not working at last
}

解决此问题的最佳方法是使用WakeLock。它使您的应用程序留在设备上,这样您就不会遇到此类问题。请使用此android清单文件:


我经常遇到这种情况,我想在睡觉的时候,wifi需要几秒钟才能唤醒。无论您使用什么应用程序,都会发生这种情况。如果真的那么重要,你可以尝试使用wifi锁。否则,只需捕获异常并再次尝试Hanks,我认为你是对的。也许过一段时间再试试。试了很多次后,我发现你是对的,我只是试着等2秒钟再打一次,总共5次,在我的手机上效果很好。谢谢,我稍后会试试这个。谢谢。虽然我的手机无法正常工作,但我用一种简单的方法做到了,每次2秒后打电话,总共5次等待手机唤醒,现在我的手机可以正常工作。。