之前看过一篇类似的解说文章,链接为点击跳转原文,然后我也遇上了相同的问题,第三方包中的AsynSocket与自己工程的AsynSocket发生了冲突,通过控制台指令xcrun -sdk iphoneos lipo -info libx.a 发现libx.a中包含的armv7和arm64两种类型的文件,说明一下
- arm64:iPhone6s | iphone6s plus|iPhone6| iPhone6 plus|iPhone5S | iPad Air| iPad mini2(iPad mini with Retina Display)
- armv7s:iPhone5|iPhone5C|iPad4(iPad with Retina Display)
- armv7:iPhone4|iPhone4S|iPad|iPad2|iPad3(The New iPad)|iPad mini|iPod Touch 3G|iPod Touch4
因此,根据文章的内容只能用xcrun指令分离libx.a,具体做法可以参考链接,我怕大家看不懂,所以贴出我的流程如下:
- 将libx.a放到桌面(我的libx.a叫DvrCamSDK.a)
从简介看出原来的libx.a大小为4.5M,缩小后应该会有所减少 - 然后打开终端如下图,用指令xcrun -sdk iphoneos lipo -info DvrCamSDK.a 查看其合成的文件类型