6

所以我有一个在 iOS 3.2 - 4.x 上运行的应用程序。它使用 ASIHTTPRequest 进行所有 REST API 调用。自从我和我的团队将我们的三部 iPhone 4 升级到 iOS 5 后,该应用程序将无限期挂起并显示 ActivityIndi​​cator。我查看了服务器日志,请求没有到达服务器。

但是,如果我按下 iPhone 主页按钮然后再次打开应用程序,请求将通过,我将收到数据,一切正常。出于某种原因,在我重新打开应用程序之前,这些请求永远不会被触发。

另一个奇怪的花絮,该应用程序可以在 Xcode 4.2 和 iPhone 模拟器中运行。该应用程序还可以在装有 iOS 5 的 iPad2 上运行(该应用程序仅适用于 iPhone)。

这会是 ASIHTTPRequest 问题吗?不太确定如何查明问题,因为没有崩溃并且只发生在手机上。

任何见解将不胜感激!谢谢。

4

2 回答 2

0

我是这方面的新手,所以这可能是一个幸运的猜测,但是当我禁用 ARC 并创建项目时,我的问题得到了解决。看看这是否有帮助。

于 2012-04-05T16:56:32.410 回答
0

当然,如果没有更多详细信息和代码示例,我无法确定,但是关于您的描述的几件事表明至少可以重现该问题。这在模拟器中有效并且在应用程序关闭并重新打开后有效,这让我认为您的应用程序可能会在您遇到此问题之前的某个时间收到内存警告。在由于该内存警告而发生的清理过程中,可能会卸载某些内容,直到您从主屏幕返回应用程序后才能正确重新初始化。您可以通过在 Xcode 4.2 模拟器中运行时模拟内存警告来测试这一点,但您可能需要准确找出内存警告发生的位置才能复制问题。

于 2011-11-23T17:47:05.017 回答