【问题标题】:iOS 5 Hanging on ASIHTTPRequestsiOS 5 挂在 ASIHTTPRequests 上
【发布时间】:2011-12-09 15:06:39
【问题描述】:

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

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

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

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

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

【问题讨论】:

  • 我可以为此 +1。自带有 ASI 的 iOS 5 以来,我遇到了各种奇怪的行为。特别是在升级到新的 Xcode 之后。我有一个理论,我的旧 Xcode 可以很好地编译这些应用程序。当我看到 libz.1.2.3 丢失时,它就开始了……嗯,这很奇怪。所以我用1.2.5替换了它。一切似乎都正常,但现在我在请求完成之前尝试弹出视图控制器时崩溃了。我很久以前通过保留视图控制器解决了这个错误,但这不再有帮助。

标签: asihttprequest ios5 xcode4.2


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • 通常内存警告在日志中显示为 Received memory warning。 我也有 ASIHTTP 和 iOS5 的问题,但我没有收到任何内存警告。可能会从 ASIHTTP 迁移到 AFNetworking。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-03
    • 2011-07-31
    • 1970-01-01
    • 1970-01-01
    • 2022-10-17
    • 1970-01-01
    相关资源
    最近更新 更多