应公司需求,需要将定制其他第三方的密码键盘,进行二次封装(添加自己的一些逻辑进去),第三方提供的密码键盘包含三个文件夹include存放头文件,lib包含.a静态库与.framework静态库(加密库),xcconfig包含xcconfig的配置
封装步骤
一、创建framework
二、同一工程创建联调demo
方法1:控制面板添加
方法2:Xcode->file->Target
三、设置product文件(Xcode13之后product文件消失了)
1、打开项目文件夹,找到XXX.xcodeproj,显示包内容
2、双击打开project.pbxproj文件,找到mainGroup,将mainGroup的内容复制给productRefGroup,项目中的groduct文件夹就出来了
四、配置framework
1、设置framework的Mach-O type 为Static Library 静态库
2、将依赖的第三方文件添加到framework中
3、添加public header
(1)将允许外部调用的头文件添加到Encryptkeyboard里面
(2)将第一步中引入的头文件,从project拖到public中
(3)添加系统依赖库
五、引用framework
在demo项目中导入#import <Encryptkeyboard/Encryptkeyboard.h>
即可直接使用
注意:
1:由于我们依赖的库含有.a静态库和xxx.framework静态库,xxx.framework静态库引入是需要设置为Do not Embed,并且需要再使用的demo工程中重新加入xxx.framework,否则无法使用xxx.framework中的内容
2:具体静态库与动态库依赖问题参考iOS 静态库&动态库依赖问题
iOS制作Framework依赖第三方Framework