在Swift中使用Objective-C作为库



我有一个Swift项目,使用一个名为OpenTok的库。我需要在我的Swift项目中使用具有相同依赖关系(OpenTok)的Objective-C类。问题是当我使用objective C文件时,它会将所有不必要的库导入Swift项目。

我的问题是我如何在我的项目中使用Objective-C文件作为库,指向与应用程序相同的依赖关系,所以一旦应用程序导入我的Objective-C库,就不会有冲突,如"One of the two will be used. Which one is undefined."错误。

  1. 为你的Objective-C文件创建一个框架并嵌入到你的主项目
  2. 新的objc框架应该链接OpenTok。
  3. 确保objc框架和OpenTok的马赫类型为"静态库"。

如果你导入OpenTok作为动态库,在这种依赖关系下,在你的应用程序二进制文件中将有两个OpenTok符号的副本。所以要用"两者之一"。哪一个是未定义的。当启动应用程序时会出现警告。

最新更新