iOS工程支持arm64bit

这篇博客介绍了如何使iOS工程支持arm64位架构,参照了64-Bit Transition Guide for Cocoa Touch,旨在确保应用同时兼容armv7和arm64设备。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JOE:


最近在为一个项目适配64位架构,参考官方的文档和大家在网上的心得然后就整理出这么一个好东东供大家做适配参考。要回寝室了,不然就没门口进了。。。


说明:
以下是我在做64位升级的各个步骤,里面的例子仅仅是该步骤的一些例子而已,大家可以举一反三,而“提示”里是一些个人心得而已。


1.配置项目文件中相关的选项


 (1)确保需要支持arm64的各个TARGETS里的General的Deployment Target是5.1.1或以上(因为iOS 5.1.1或以上才开始支持arm64架构)


 (2)确保TARGETS里的Architectures和Valid Architectures 的有效值的合集包含armv7和arm64(这里为什么说有效值,是因为它的只会收到PROGECT里的值替代,如果是它空值的话)


 (3)其他选项就没什么了,如果还有不对的话,xcode还是会给你相应的修改提示请求的
 
 小提示:如果你的当前active scheme所指向的设备是32位或64位的话,在debug下会分别会以32位和64位编译,所以两个都得测试哦。还有记得在真机上调试,因为arm64和x86_64毕竟是两个不一样的架构


2.更新项目中的 *.framework 或者 *.a 等第三方库


 (1)但对应的官方网下载同时兼容armv7和arm64的库(也可以获得源代码自己生成相应的库,你有源码的话)


 (2)在本地使用MAC下的lipo命令检查一下是否同时兼容armv7和arm64


  例子:lipo -info 库文件


 (3)使用代码比对工具对新旧库的头文件进行一下比对,检查API是否发生了变化,并且做相应的接口变更工作


 小提示:在更换库的时候,最好是把新下载的库更改一下名字跟旧的库一样并且直接替换原项目中的旧库(路径也不用变),这样的就不用做代码里面库引入等其他修改工作也不会修工程配置文件中你一把心机手动设置的各个Configurations Set库搜索路径。


3.重写项目中的.s后缀的汇编文件
 
 (1) 参照iOS ABI Function Call Guide检查并且重写asm代码


 小提示:iOS并不完全支持汇编的标准,所以必须参照Guide来写对应的asm。如果项目中没有使用汇编的话,就可以直接跳过这个步骤了


4.到了这个步骤后基本上就可以进行黑盒测试


 (1)交给测试
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值