我正在努力正确/干净地创建iOS静态库。
到目前为止,我已使用Extension a在我的内部(私有).h声明和公共.h声明(导出)之间创建了一个分隔。
我已经“成功”创建了该库并看到它正常工作。但是我仍在公开WTDevice.h中公开类声明
@interface WTDevice : NSObject <WTMinorStateDelegate,CBPeripheralDelegate>
由于WTDevice继承自WTMinorStateDelegate,我也必须导出协议WTMinorStateDelegate,我不希望todo因为它只在库中使用。
BTW WTDevice扩展名在WTDevice_internal.h中,不会被导出。
我确信有一种方法可以放线:
@interface WTDevice : NSObject <WTMinorStateDelegate,CBPeripheralDelegate>
进入WTDevice.m(将其设为私有),但到目前为止我失败了。问题是当我从WTDevice.h文件中删除它时会替换它吗?
由于
答案 0 :(得分:2)
在WTDevice.m中,在@implementation块之前添加此项以创建私有类别。
@interface WTDevice () <WTMinorStateDelegate>
@end
在WTDevice.h中,从@interface行中删除WTMinorStateDelegate。