發(fā)版App Store項(xiàng)目里使用的framework是不允許包含模擬器架構(gòu)的,下邊我們以xxxSDK.framework為例說下如何拆分模擬器器架構(gòu)(x86_64)
一、iOS 架構(gòu)劃分:
模擬器
4s-5:i386
5s-6s Plus:x86_64
真機(jī)(iOS設(shè)備)
- armv6:
iPhone
iPhone 2
iPhone 3G
iPod Touch(第一代)
iPod Touch(第二代)
- armv7
iPhone 3Gs
iPhone 4
iPhone 4s
iPad
iPad 2
- armv7s
iPhone 5
iPhone 5c 【靜態(tài)庫只要支持了armv7,就可以在armv7s的架構(gòu)上運(yùn)行】
- arm64:
iPhone 5s
iPhone 6
iPhone 6 Plus
iPhone 6s
iPhone 6s Plus
iPad Air
iPad Air2
iPad mini2
iPad mini3
二、查看架構(gòu)
lipo -info xxx
打印如下:
edz@edzdemac ImSDK.framework % lipo -info ImSDK
Architectures in the fat file: ImSDK are: armv7 x86_64 arm64
edz@edzdemac ImSDK.framework %
說明包含: armv7 x86_64 arm64 三個(gè)架構(gòu)
三、分離架構(gòu)
終端輸入命令,分別生成對(duì)應(yīng)架構(gòu)包
lipo ImSDK -thin arm64 -output ImSDK-arm64
lipo ImSDK -thin armv7 -output ImSDK-armv7
lipo ImSDK -thin x86_64 -output ImSDK-x86_64
生成對(duì)應(yīng)的ImSDK-arm64、ImSDK-armv7、ImSDK-x86_64
四、合并架構(gòu)
將需要的架構(gòu)合并
lipo -create ImSDK-arm64 ImSDK-armv7 -output abc/ImSDK
最后成成新的ImSDK二進(jìn)制文件