sendSynchronousRequest

sendSynchronousRequest

我正在使用sendSynchronousRequest从服务器获取数据。我知道,同步将等待,直到收到该请求的数据为止。

但是问题出在用户错误地输入一些不存在的URL并试图获得响应时。在这种情况下,如果用户进入后台,然后进入前台,则仅显示黑屏。它仅显示状态栏。也没有显示任何后台应用程序。我必须按“主页”按钮才能退出应用程序。

在模拟器上,1分钟后,它向我显示“请求超时”消息(无崩溃)。

在设备上,应用程序在1分钟内崩溃。

任何建议。任何帮助。在我的应用程序中,这确实是一个严重的问题。

谢谢。

最佳答案

就像朱利安(Julien)所说的那样,看门狗正在杀死您的应用程序。要回答一些问题:

  • 为什么仅在模拟器上会发生这种情况?
    因为当您进行调试时,看门狗会独自离开您的应用程序,这会花费一些时间。
  • 为什么只有在用户输入错误的URL时才会发生这种情况?
    由于系统超时,如果找不到服务器,系统将继续尝试60秒。
  • ,问题是同步还是异步?
    不,问题出在线程上,您可以在后台线程中执行相同的操作,只是不要在主线程上执行此操作,而看门狗会让您独自一人。
  • 应用程序启动时,为什么屏幕变黑了?
    记住,您正在阻塞主线程,该线程绘制...

  • 希望仅此而已。让我知道我是否错过了什么。

    关于iphone - NSURLConnection sendSynchronousRequest-背景到前景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7975818/

    10-09 16:15