我使用启用了ARC的xcode 4.3.2开发了一个应用程序,我的应用程序用户拥有ios3.2,ios4.0,ios5.0设备如何支持更低版本的ios设备使用。我应该做什么代码方面的任何东西。或者是否有任何方式动态设置ARC。
任何人都知道这个PLZ与我分享。 谢谢
答案 0 :(得分:2)
ARC不依赖于设备或操作系统(请参阅下面的注释)。它是LLVM编译器功能(可以使用-fno-objc-arc编译器标志禁用)。编译器管理内存而不是程序员。最终的可执行文件彼此之间不会有很大差异,并且可以在为项目指定的最小操作系统上工作(如果您没有使用特定于ARC的关键字等)。
注意: 根据Apple的Transitioning to ARC Release Notes from Apple,ARC编译的可执行文件只能在iOS 4及更高版本上运行。此外,仅在iOS 5上支持弱引用。
答案 1 :(得分:0)
只需将目标部署设置为用户可能使用的最低iOS版本。只有在Xcode中编译应用程序时,AutoMatic Reference才会计算。启用app的ARC的内存由编译器(Xcode)管理。因此,您无需担心设备的目标iOS版本。只需将目标部署设置为3.2或4等。
答案 2 :(得分:0)
我认为至少不能保证在iOS 3.x上正常工作。见Transitioning to ARC Release Notes from Apple:
适用于Mac OS X v10.6和v10.7(64位应用程序)以及iOS 4和iOS 5的Xcode 4.2支持ARC.Mac OS X v10.6和iOS 4不支持弱引用。