首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有Cocoapod的SocketRocket出现错误

带有Cocoapod的SocketRocket出现错误
EN

Stack Overflow用户
提问于 2013-01-08 08:14:29
回答 1查看 1.2K关注 0票数 0

我今天才开始使用CocoaPods ...首先,我添加了AFNetworking,它工作得很好...然后我需要SocketRocket..。

然而,在添加了CocoaPods之后,SRWebSocket.m抛出了9个警告和6个错误...错误与保留/释放不可用和ARC限制有关...所有警告都是:

代码语言:javascript
复制
'dispatch_get_current_queue' is deprecated: first deprecated in iOS 6.0

所以我猜我可能在设置这个的时候漏掉了一个步骤?

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-08 08:24:14

所以有几件事

  1. 你应该向SocketRocket提交一个拉取请求,删除dispatch_get_current_queue的用法,并将其更改为任何替换的用法,但这是一个警告,因此目前并不是一个大问题。
  2. 由于SocketRocket项目不支持/利用ARC (可能是因为它有保留/释放调用),你将需要进入构建阶段>编译源,找到所有SocketRocket类,并添加-fno-objc-arc编译器标志。这将允许您进行编译,虽然理想情况下应该更新ARC Podspec以指定应该关闭SkyRocket。Podspec中的compiler_flags属性应该包含-fno-objc-arc,您应该提交一个拉取请求来更新该属性。

编辑

有趣的是,SocketRocket吹嘘它使用了ARC,我没有看到任何保留/释放的调用(在CFRetain/CFRelease之外,这在ARC中是很好的/必要的)。

我在SRWebSocket.m的源代码中达到了峰值,这两个版本都在podspec repo (0.1.0和0.2.0)中列出,都没有保留/释放调用。

0.2.0:https://github.com/square/SocketRocket/blob/v0.2.0/SocketRocket/SRWebSocket.m

0.1.0:https://github.com/square/SocketRocket/blob/82c9f8938f8b9b7aa578866cb7ce56bc11e52ced/SocketRocket/SRWebSocket.m

奇怪??您确定收到有关SRWebSocket.m的错误吗?

编辑2个

在进一步挖掘之后,正如评论中所提到的。以iOS 6.0+或OS X 10.8+为目标时,不允许使用dispatch_releasedispatch_retain,因此您需要移除这些调用或执行pull request 55中针对项目建议的操作

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14206330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档