IOS 新建的Framework中OC与swift的混编

版权声明:原创博客转载使用等请获得本人许可 https://blog.csdn.net/wz597002248/article/details/84033295


近期进行项目重构工作,将原先的项目拆分成子framework解耦,因为原项目是OC和swift混编的,遇到了很多framework层的混编问题,总结一下


在最上层项目中混编

swift引用swift

直接互相引用即可

swift引用OC

通过bridge桥接文件

OC引用swift

通过#import “项目名-Swift.h”

OC引用OC

直接#import “类名.h”


在Framework层内混编

swift引用swift

直接使用

swift引用OC

在项目的公共.h中加入需要引用的OC头文件,然后在项目的Build Phases中将其头文件移动到Public中

OC引用swift

#import <项目名/项目名-Swift.h> 如#import <home_device_add_sdk/home_device_add_sdk-Swift.h>

OC引用OC

直接#import “类名.h”


跨Framework层混编

swift引用swift

添加项目依赖关系
需要import整个新的项目

swift引用OC

添加项目依赖关系
需要import整个新的项目

OC引用swift

添加项目依赖关系
#import <项目名/项目名-Swift.h> 如#import <home_device_add_sdk/home_device_add_sdk-Swift.h>

OC引用OC

添加项目依赖关系
#import <项目名/类名.h>


上层项目引用Framework时混编

swift引用swift

添加项目依赖关系,然后在引用处添加import语句
import framework名,如import home_device_add_sdk

swift引用OC

添加项目依赖关系即可

OC引用swift

添加项目依赖关系
#import <项目名/项目名-Swift.h> 如#import <home_device_add_sdk/home_device_add_sdk-Swift.h>

OC引用OC

添加项目依赖关系
#import <项目名/被引用类名> 如#import <home_device_add_sdk/HWDevAddResultController.h>

猜你喜欢

转载自blog.csdn.net/wz597002248/article/details/84033295