我正在使用sendSynchronousRequest从服务器获取数据。我知道,同步将等待,直到收到该请求的数据为止。
但是问题出在用户错误地输入一些不存在的URL并试图获得响应时。在这种情况下,如果用户进入后台,然后进入前台,则仅显示黑屏。它仅显示状态栏。也没有显示任何后台应用程序。我必须按“主页”按钮才能退出应用程序。
在模拟器上,1分钟后,它向我显示“请求超时”消息(无崩溃)。
在设备上,应用程序在1分钟内崩溃。
任何建议。任何帮助。在我的应用程序中,这确实是一个严重的问题。
谢谢。
最佳答案
就像朱利安(Julien)所说的那样,看门狗正在杀死您的应用程序。要回答一些问题:
因为当您进行调试时,看门狗会独自离开您的应用程序,这会花费一些时间。
由于系统超时,如果找不到服务器,系统将继续尝试60秒。
不,问题出在线程上,您可以在后台线程中执行相同的操作,只是不要在主线程上执行此操作,而看门狗会让您独自一人。
记住,您正在阻塞主线程,该线程绘制...
希望仅此而已。让我知道我是否错过了什么。
关于iphone - NSURLConnection sendSynchronousRequest-背景到前景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7975818/