从2015年2月开始苹果强制应用支持64位的优势与障碍

苹果公司宣布从2015年2月1日起,所有提交到应用商店的应用需要支持64位,并基于iOS 8 SDK构建。该要求只针对新提交应用,包括首次提交应用和对已有应用的更新。

去年苹果公司在iPhone 5s的A7芯片中引入了64位架构。今年年初,苹果公司又在iPhone 6和6 Plus中引入了基于64位 ARMv8架构的A8芯片,在iPad Air 2中引入了功能更强的A8X。

根据ArsTechnica报道,“在苹果A7芯片上运行64位代码的速度比32位代码快30%,在A8芯片上更是达到40%。”当设备上的所有应用运行在64位模式下时还有另一­­­个优势:不用同时载入SDK框架的32位和64位版本,进而降低总体的内存开销。

另据ArsTechnica的数据,截止到2014年10月,很多流行应用如Twitter、Facebook和Instagram还不支持64位。

通常情况下,开启64位支持的步骤也很简单,“使用Xcode的默认构建配置‘Standard architecture’,即可构建出包含32位和64位代码的单一二进制文件”,苹果公司如是说。

虽然苹果公司的说法比较简单,但是只有符合特定规则的代码才能无缝编译为64位。苹果公司提供了一份64位转换指南,里面列出了一些危险的编程行为,如将指针强制转换为整型、将NSInteger和CGFloat转换为C语言的内置类型、在数据结构中假定32位对齐等等 。

此外,在转换为64位的过程中,那些使用老版本第三方框架的开发人员可能遇到令人头痛的问题,现有的框架版本不支持64位,但新版本又通常是可望不可即的事情。

查看英文原文:64 Bit Support for iOS Mandatory From February 2015: Benefits and Hindrances

感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至[email protected]。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

你可能感兴趣的:(从2015年2月开始苹果强制应用支持64位的优势与障碍)