如果我們打包靜態庫肯定會有這樣的需求:就是你打包一個庫既能在真機上使用,也可以在模擬器上使用,怎麼來打包生成一個通用的靜態庫呢?
其實也不難,首先,你得先通過真機打包生成真機可以用的靜態庫(這個庫可以在真機上使用,但在模擬器上運行的時候就會報錯),接着,需要通過模擬器生成一個靜態庫(這個庫是可以在模擬器上運行,但是在真機上運行就會報錯),兩個庫生成完成之後,就是今天我們需要做的事了。
lipo -create YAO/iOS/iphoneos/libZib.a YAO/iOS/iphonesimulator/libZib.a -output YAO/iOS/libZib.a 其中YAO/iOS/iphoneos/libZib.a //爲真機庫。 (iphoneOS意思爲真機) YAO/iOS/iphonesimulator/libZib.a //爲模擬器庫 (iphoneSimulator爲模擬器) -output YAO/iOS/libZib.a //爲兩個合併後存放的路徑(這個就是生成的通用庫,名字爲libZib.a). 然後可以輸入命令測試下是否成功 lipo -info YAO/iOS/libZib.a //下面是輸出 armv7 i386 有了兩個就表情模擬器和真機都支持 其中armv7爲真機架構 i386爲模擬器 Architectures in the fat file: YAO/iOS/libZib.a are: armv7 i386
其實那兩個路徑應該怎麼找呢?我們可以打開命令窗口,然後把模擬器庫拖到這個黑窗口中就會生成路徑,同理生成真機庫的路徑即可。(小技巧分享)