1、打开Xcode 点击File >> New >> Project
选择iOS创建平台,然后在Framework & Library选择Framework进行创建。
在此,我演示创建的Demo工程为SwiftFramework
,创建成功之后结构目录如下图所示:
这里值得注意的是:目录中包含了一个.h
文件,回想一下我们平时所用的 OC&Swift 桥接文件也是.h
文件。因此,我们在移植代码到SwiftFramework
时,可以不用再去设置桥接文件路径了,也不用在项目名-Bridging-Header.h
文件里#import 一个个需要暴露的.h
文件了,我们直接把以前的桥接文件删除掉。然后在SwiftFramework.h
这个文件里直接参照提示,逐一添加需要暴露出来 的.h
文件即可,如下图所示:
添加完之后,我们再去Headers >>Public 目录下把NetWorkState.h
文件给添加进去,顾名思义就是要设置为公共部分才能暴露给大伙瞧瞧,才能生效。
这一步完成之后就差不多了,如果需要将SwiftFramework
设置静态库或是动态库,去这里进行设置即可:
以上就是和大家分享一下创建Swift Framework的过程。
接下来和大家简单分享一下如何使用真机编译(模拟器编译大家应该都会,所以略过)。使用真机编译调试的话,我们要可以根据IOS设备的承载环境来设置一下编译版本,本项目的IOS运行版本设置为10.0的,方便机型兼容。下图是SwiftFramework
设置真机编译模式,这样编译过的SwiftFramework
就可以直接被其他工程调用后在真机上进行调试了。
在使用新版的Xcode时,创建Framework
是没有Products
这个文件夹的,我们可以随便添加一个依赖库进去,然后就可以生成Products
文件了。SwiftFramework
也是导入了依赖库,快速生成Products
文件,导入方法可以参考这个:https://blog.csdn.net/weixin_44587801/article/details/118107780?spm=1001.2014.3001.5502
SwiftFramework
编译成功后,我们可以在Products
目录里看到这个文件SwiftFramework
,最后,我们选中它,点击右键,再点击Show in Finder
现在,我们就可以把这个SwiftFramework.framework
文件添加到其他swift工程进行使用了,本处添加到SwiftDemo
里面,操作如下图:
注意的是
这里一定要设置为Enbed & Sign,
这样才能引用成功及识别SwiftFramework.framework
调用工程中,我们只需在要用到SwiftFramework.framework
的页面导入头文件即可
我们要使用SwiftFramework.framework
里面的相关类及方法时,我们记得先在SwiftFramework
工程里面把相关的类文件设置为Open, 相关方法或属性定义加上Public,然后再对SwiftFramework
进行编译,编译成功后再调用。
篇幅较长,为了给大家分享详细一点,欢迎大家点赞加关注。