9

设置

  1. 我创建了一个快速框架,其中包括 C 库(CommonCrypto)和一个 Objective C 文件。

  2. swift项目中没有桥头堡。所以我创建了一个module.modulemap将 CommonCrypto 和 Objective-C 文件导入到我的 swift 框架中。

    module.modulemap 内容: 在此处输入图像描述

这是 module.modulemap 示例链接:在 swift 框架中导入 CommonCrypto

  1. 在项目设置中,添加modules.modulusmap路径来快速编译在此处输入图像描述

    因此,在我的 swift 框架中,一切正常。我可以像这样使用模数

    在此处输入图像描述

问题展示

  1. 归档模块化框架并作为构建产品导出。

  2. 在我的 swift 示例项目中,将模块化框架添加到 Embedded Binaries 在此处输入图像描述

  3. 当我在框架内使用某些东西时,此行发生错误 在此处输入图像描述

我尝试了很多解决方案,但仍然无法正常工作。

类似的问题:

  1. Swift 应用程序:导入静态库的框架时“缺少必需的模块”

  2. 将 RealmSwift 添加为子项目:缺少必需的模块:'Realm.Private'、'Realm'

有人对此有很好的解决方案吗?谢谢!!

4

1 回答 1

6

解决方案

iOS 框架作为文件夹存在,创建一个module.modulemap查找库或头文件。

  1. 设置module.modulemap路径

    在项目/目标/构建设置/Swift 编译 - 搜索路径/导入路径 = “${SRCROOT}”

  2. 在下面添加到module.modulemap

在此处输入图像描述

评论

如果框架存档在同一开发环境中,则不必将 module.modulemap 添加到示例项目。

于 2017-06-28T03:32:02.747 回答