iOS打包Framework真机和模拟器兼容合并版本 - 详细攻略步骤

Posted 纠结的哈士奇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS打包Framework真机和模拟器兼容合并版本 - 详细攻略步骤相关的知识,希望对你有一定的参考价值。

打包Framework,测试时:

1、用模拟器打包,测试时只能跑在模拟器

2、用真机打包,测试时只能跑在真机

那么怎么做到一个版本兼容以上两种场景呢?

 

解决如下:

1、打开终端

2、输入  

 lipo -create 【模拟器打包path】 【真机打包path】 -output 【导出兼容版本path】

PS:每个单词之间记得加空格。

 

=======================  示例  Demo==========================

准备前提:

-- 假设我们包已经完成,并在模拟器和真机都能编译通过。

-- 先分别在模拟器下和真机下编译通过。 

 

实现步骤:

1、右击打开包,在finder显示

 

2、正常我们会看到这些,(这里我一般习惯设置成Release环境下),重点是第三个红框,这就是我们要合并的东西。

 

3、这里我为了路径简短(便于下面的观看),在桌面新建文件夹:

 

然后把刚才show in finder的两个包文件,整体拷贝到对应的文件夹下,如图:

 

4、打开终端:拖动上图蓝色选中到终端,查看路径(为了方便下面可以直接拷贝路径)

5、运用我开头写的命令:

lipo -create /Users/MACBOOK/Desktop/合并Framework/模拟器/IntelligentCollegeToB.framework/IntelligentCollegeToB /Users/MACBOOK/Desktop/合并Framework/真机/IntelligentCollegeToB.framework/IntelligentCollegeToB -output /Users/MACBOOK/Desktop/合并Framework/IntelligentCollegeToB

 

6、结果如下:

会在这里多出一个文件,这个文件就是合并了模拟器和真机的兼容证明,下面用这个替换就行了。

 

 

7、最后的就很简单了

我们拷贝一份真机下的包,然后将第6步中得到的文件替换进去,最终就是兼容版本包。

 

以上是关于iOS打包Framework真机和模拟器兼容合并版本 - 详细攻略步骤的主要内容,如果未能解决你的问题,请参考以下文章

iOS真机和模拟器CPU架构

iOS 静态库和动态库打包framework流程(纯swift版/swift、OC混编版)

iOS 静态库和动态库相关

IOS::.a的生成,以及模拟器和真机.a 的合并

制作通用framework的几点注意

最新最全为 iOS 和 Android 的真机和模拟器编译 Luajit 库