【发布时间】:2015-12-29 05:40:26
【问题描述】:
我的 iOS 应用是使用 iOS 5 SDK 编写的。当我按照苹果的要求切换到较新版本的 SDK 时,iOS 目标版本 5 从未被修改过。 使用新的 SDK (9) 我无法使用旧设置编译它,我正在尝试切换到更新的目标。 (6,7,8,9,我遇到了同样的问题)。该应用程序的代码混合在一起,有些文件使用 ARC,有些则没有。当我切换到较新的操作系统目标时,我收到了很多关于 ARC 的错误,主要是关于调度队列管理(dispatch_retain/dispatch_release)。如果我添加 -fno-objc-arc 应用程序崩溃,如果我删除 dispatch_retain/release 调用应用程序崩溃。我的问题是:
- 有谁知道在 iOS 5 和 6 之间重新升级 ARC 的 SDK 编译发生了什么变化?
- 任何建议如何前进?有没有办法保持 arc 启用但告诉编译器允许手动处理调度队列?
【问题讨论】:
标签: ios objective-c iphone xcode automatic-ref-counting