从Objective-C到Swift之间的桥接后无法识别扩展

问题描述:

我对Swift和Objective-C的专家有疑问。 我正在用swift开发iOS项目。 在这个项目中,我导入了一个与Objective-C桥一起使用的旧版本库(在Objective-C中)。从Objective-C到Swift之间的桥接后无法识别扩展

当我在Swift项目中使用这个库的某些功能时,由于无法识别的扩展名,我遇到了崩溃。

的错误信息是:

- [NSConcreteMutableData AES128EncryptedDataWithKey:]:无法识别的选择发送到实例

此方法在我的图书馆来自一个扩展类(NSData的+ AES128.h)这在Swift方面是不被认可的。 有人知道如何在Swift中引用这个扩展?我真的迷失了!

谢谢!

这是一个运行时错误,不是编译器/ Swift错误。所以很可能你忘了将.m文件添加到实现此类别/扩展的项目中,但头部必须显然存在,否则会收到编译器警告。

+0

不,不是原因。该库没有警告,并且Objective-C项目可以正常工作。 但是对于Swift项目,我有这个错误,就好像这个桥没有考虑到这个扩展。 – user3281706