前言
环境
Xcode 13.0
iOS 15.0
1、创建工程
command + shift + N, 选中 Framework & Library 下的 framework,然后 next

输入framework 名称,next 创建成功

2、修改配置信息 Build Settings
①Dead Code Stripping 设置为 NO

②Mach-o type 设置为 Static Library

③Architectures添加 armv7s

④Build Active Architecture Only 这块我看网上有人设置为 NO,不过我这边设置 NO 的话,第三方库一直报错(snapkit为例),菜鸡一枚,有大佬知道的话,麻烦给说明一下
3、分别用真机、模拟器编译 command + B
(右键 products>framework 将得到 frameWork 文件)
备注:由于 xcode13 问题(个人认为),如果没有使用第三方库,会出现没有 product 的情况,先建议在这里面找找吧/Users/youlu/Library/Developer/Xcode/DerivedData
我这里分别是debug 和 release 模式下的真机和模拟器生成的 framework,建议使用 debug 模式下(别问问什么,别人都这么用,问就是我是菜鸡,后续进行中在重新编辑把,大佬请麻烦解释下)

然后将 Debug-iphoneod 是真机下的, Debug-iphonesimulator 是模拟器下的:framework合并成一个,在真机和模拟器能够同时使用的 framework。

(备注 xxx 代表你的 framework 名)
打开终端输入 lipo -create 模拟器下 xxx 路径 真机下 xxx 路径 -output 新的路径xxx
这里将合成后的文件放在了桌面上,就生成了一个后缀名为.lipo 的文件,将后缀名去掉,替换之前真机中的 xxx 文件;
替换之后,这个 framework 文件就是我们需要的,在真机和模拟器上都能使用的。
然后你就可以拿这个 framework 去使用了
此文章纯属记录,如果问题,请大佬们不吝说明
网友评论