iOS Afnetworking 2.0 AfSecurityPolicy.m 在构建项目时显示错误

Posted

技术标签:

【中文标题】iOS Afnetworking 2.0 AfSecurityPolicy.m 在构建项目时显示错误【英文标题】:iOS Afnetworking 2.0 AfSecurityPolicy.m showing an error while building the project 【发布时间】:2014-01-26 01:19:13 【问题描述】:

我正在关注http://www.raywenderlich.com/30445/afnetworking-crash-course 的 ios AfNetworking 教程。本教程遵循旧版本的 AfNetworking,但我已设法将其迁移到新的 AfNetworking (2.0)。遵循 JSON 请求后,我没有错误。当我点击运行按钮运行应用程序时,由于 AFSecurityPolicy.m 在两个地方出现以下错误。

“'NSArray' 没有可见的@interface 声明选择器'firstObject'”。

这是错误的截图:

最初,安全框架没有被包括在内,所以我将它包括在内,以防错误是由此引起的。但是,添加 SecurityFramework 后,错误仍然存​​在。

现在我有点迷失了,因为我在网上搜索并没有发现任何类似的问题。任何帮助,将不胜感激。

谢谢

【问题讨论】:

这里也一样,祝你好运!? 是的,我认为解决方案是使用 XCode 5.0。我认为 AFNetworking 2.0 至少需要 XCode 5.0。我在 Xcode 4.6 上运行相同的项目并且出现错误,而在 Xcode 5.0 上运行良好。所以,试试这个,让我知道。 现在你需要使用 cocoapods.. 我没有找到任何其他解决方案.. 检查Starting guide with AFNetworking 和这个tutorial 以获得更好的理解 @mdhossain - 我认为没有人可以阅读该错误。您应该在问题中包含文本。这确保人们可以阅读它;并且未来的访问者可以搜索它。 【参考方案1】:

[NSArray -firstObject] 是 iOS 7 的新成员,您的目标架构可能设置得太旧了。 AFNetworking 2.0 仅支持 iOS 6 和 iOS 7。

【讨论】:

好吧,我的项目是为 iOS 6 + 构建的,但 AFNetworking 2.0 仍然无法正常工作 虽然我已经解决了,正如我之前的评论中提到的,我会接受这个作为答案,因为这是我的问题的原因。【参考方案2】:

从问题看来你一直在使用 OSX Foundation.framework 而不是 ios cocoa touch Foundation.framework 与在 Osx 控制台应用程序中一样,NSArray 没有第一个 Object 的属性 你可以使用

array[0] 如果错误仍然存​​在,最好切换到 ios sdk 以供进一步使用。

谢谢

【讨论】:

【参考方案3】:

为了让您的旧代码运行,您需要使用 AFNetworking 旧版本 pod,它曾经可以正常工作。

为此,您需要在 TextEditor 中的“Podfile”中进行编辑

将“pod 'AFNetworking'”更改为“pod 'AFNetworking','~> 1.3.1'”(您需要使用工作正常的AFNetworking 版本)

然后在终端上运行“pod update”

【讨论】:

以上是关于iOS Afnetworking 2.0 AfSecurityPolicy.m 在构建项目时显示错误的主要内容,如果未能解决你的问题,请参考以下文章

AFNetworking 2.0 iOS 7 复制与 AFHTTPRequestOperation.h 文件中的区域警告

AFNetworking 2.0 + TLS 1.2

iOS- AFNETWORKING 2.0 -AFHTTPRequestOperationManager - POST-MULTIPART-REQUEST

连接 JSON AFnetworking 2.0

iOS Afnetworking 2.0 AfSecurityPolicy.m 在构建项目时显示错误

AfNetworking 2.0 发布问题