ios - AFNetworking 中适用于 iOS 应用程序崩溃的 AWS 分析

标签 ios swift amazon-web-services afnetworking facebook-ios-sdk

我在一个应用程序中集成了 AWS analytics(2.1.1)、Facebook SDK(4.1.0) 和 AFNetworking(2.5.4)。但是应用程序在启动时崩溃了。这是崩溃的屏幕截图。任何帮助,将不胜感激。 enter image description here

最佳答案

我刚刚在 AFNetworking 代码中做了一些检查。

当 AFNetworking 正在加载时,更具体地说是它的类 AFURLSessionManager ,他们在 NSURLSessionTask 上做了一些方法调配,用他们自己的实现替换了原来的方法。原因是

A workaround for issues related to key-value observing the state of an NSURLSessionTask

这是 AFNetworking 中的肮脏 hack,恕我直言,他们永远不应该做那样的事情,因为它以一种意想不到的方式破坏了 Apple API。解决此问题的唯一方法可能是删除 AFNetworking 并自己编写通信层(这非常简单),或者直接包含 AFNetworking 代码(不使用 pod)并删除 swizzling 部分。

我不确定为什么会发生崩溃,但这可能是 AFNetworking 开发人员未预料到的用例。我建议在 af_resume 上设置断点并使用调试器获取有关 self 的信息(例如 po selfpo [self class] 等)并在 github 上提出 AFNetworking 问题。

关于ios - AFNetworking 中适用于 iOS 应用程序崩溃的 AWS 分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30395659/

相关文章:

arrays - 如何在 Swift 中打乱数组?

ios - 在 Swift 4 中呈现来自 ParentViewController 的 uiviewcontroller

mysql - 有没有办法让 AWS RDS Public Accessibility = No 但仍然可以在 EC2 实例之外访问?

amazon-web-services - 在 Amazon EC2 实例上的 Ubuntu 中禁用防火墙

objective-c - UIScrollview 倾斜

ios - 只获取白色屏幕截图

swift - AlamoFire 是否使用单例来抽象其客户端类?

带有 iOS 8 (Xcode 6) 的 iOS 模拟器没有出现在 Safari 开发菜单中

ios - 当内容高于 EstimatedSize (sizeHint) 时,为什么单元格不调整大小

amazon-web-services - 让 Beego 在 AWS 上工作