iOS 关于真机和模拟器framework合并

有时候在项目中,模拟器和真机上运行一个项目的时候,因为某些静态库的原因,可能某一个方面不能运行,大部分情况就是模拟器上不可以但是在真机上可以。接下来要做的就是把某一个工程生成的静态库进行打包以后生成的framework进行合并。


首先,说一下打包静态库。

首先来到这个地方

iOS 关于真机和模拟器framework合并


点击选择

iOS 关于真机和模拟器framework合并


选择run->将Debug模式改成Release模式,选择Close

iOS 关于真机和模拟器framework合并



回到工程中,在模拟器进行编译,编译完成以后再次在真机上选择编译,编译成功以后。

来到工程中:

iOS 关于真机和模拟器framework合并


选择:

iOS 关于真机和模拟器framework合并

点击以后我们会看到:分别是真机生成的和模拟器生成

iOS 关于真机和模拟器framework合并

我们需要的是这两个文件:


iOS 关于真机和模拟器framework合并

iOS 关于真机和模拟器framework合并









来到终端:

输入  lipo -info加真机上的这个文件路径 回车

iOS 关于真机和模拟器framework合并

前面的不用管,看最后 armv7 arm64 说明是真机,如此方法测试模拟器文件,需得到i386 x86_64才对。

接下来重点:合并

lipo -create 真机路径 模拟器路径 -output 真机路径

因为我们是合并到真机路径上,所以合并完成后需要按上面的方法进行测试,还是拖入真机路径,这时候需要得到的是:armv7 i386 x86_64 arm64

合并成功!

接下来新建一个工程,把拖入framework,中间这个


iOS 关于真机和模拟器framework合并