如何在 iOS 4 上运行 iOS 5/ARC 项目

Posted

技术标签:

【中文标题】如何在 iOS 4 上运行 iOS 5/ARC 项目【英文标题】:How to run a iOS 5/ARC project on iOS 4 【发布时间】:2012-01-03 20:05:24 【问题描述】:

如果我使用 XCode 的模板之一创建一个新的 ios 5 项目并使用 ARC 并将部署目标设置为 4.3,然后尝试在安装了 iOS 4.3.1 的 iPhone(已配置)上运行它,那么我得到以下消息:

“没有提供兼容 iOS 版本的预置 iOS 设备。将 iOS 设备与最新版本的 iOS 连接以运行您的应用程序或选择 iOS 模拟器作为目标。”

我没有做任何更改,这是一个未更改的模板项目。

ARC 是编译时,从我搜索以前的帖子来看,它应该是向后兼容和运行的,我必须在 Xcode 中缺少一些设置才能使其在 4.3 设备上运行?

谢谢

【问题讨论】:

尝试将 armv6 架构添加到您的项目中(项目>构建设置>架构) ARMV6 仅适用于 iPhone(2G 和 3G) - 前者以 iOS 3.1.3 结束,后者以 4.2.1 结束 -> 针对 iOS 4.3.1 时根本不需要 ARMV6跨度> 【参考方案1】:

检查“目标”而不是“项目”的部署目标。在构建设置中执行此操作。在目标级别设置的设置优先于在项目级别设置的设置,因此您可能仍然在目标设置 5.0。

否则,你所做的应该可以工作,你是对的,ARC 对此没有任何影响(但请记住,在 iOS 5 之前你不能使用弱引用)。

【讨论】:

应该如何解决/处理任何弱引用? 基本上不要使用它们。弱引用只是一个assign 属性,当引用的对象被释放时它不会被取消。这不是问题,您只需要意识到并有效地编码。

以上是关于如何在 iOS 4 上运行 iOS 5/ARC 项目的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 应用程序的 UIApplicationShortcutIcons(3D touch) 中添加 4 个以上的快速操作项

在 Mountain Lion 上运行 4.3 版的 iOS 应用程序

如何在 ios 4.3 版本中测试我的 ios 应用程序?

如何在 Xcode 中选择 iOS 模拟器作为目标?

自定义 BarButtonItem 项:在右上角添加红点,Swift 4 IOS

如何将基于视图的 iOS 项目转换为通用版本?