关于将 Objective C 代码添加到 swift 动态框架的说明
Clarification on adding Objective C code to a swift dynamic framework
我在 swift 中有一个动态框架,目前正在链接另一个用 Objective C 编写的框架。这行得通,但很烦人,因为 Objective C 框架实际上只有 2 个文件,我想知道是否有办法将其引入我的 swift 框架。
如果这是一个应用程序,我会使用 Bridging-Header,但 swift 框架不支持它。
我的框架名为 GDL90,仅包含 swift 个文件。
我的 Objective-C 框架包括:
GeoidCalculator.h
GeoidCalculator.m
EGM96
(数据文件)
CORCOEF
(数据文件)
真的很简单 - 对吧?所以我想看看是否有办法将这段代码添加到我的 swift 项目中。
尝试 #1 - 将我的代码添加到“umbrella header?” GDL90.h
我添加了我的文件并收到警告 Include of non-modular header inside framework module 'GDL90'
好的,那不是骰子。
尝试 2
我想我需要制作一个模块映射文件。
所以我创建了一个名为 ${SRCROOT}/GDL90/EGM96
的目录,并在其中创建了 EGM96.module.modulemap
module EGM96 {
header "GeoidCalculator.h"
export *
}
然后在我的一个 swift 文件中我有 import EGM96
似乎没有找到。
在我的构建设置中我有:
Define Modules
已打开,我正指向我的 模块映射文件 项目
中的 modulemap
文件
我是不是漏掉了什么??
我在 swift 中有一个动态框架,目前正在链接另一个用 Objective C 编写的框架。这行得通,但很烦人,因为 Objective C 框架实际上只有 2 个文件,我想知道是否有办法将其引入我的 swift 框架。
如果这是一个应用程序,我会使用 Bridging-Header,但 swift 框架不支持它。
我的框架名为 GDL90,仅包含 swift 个文件。
我的 Objective-C 框架包括:
GeoidCalculator.h
GeoidCalculator.m
EGM96
(数据文件)CORCOEF
(数据文件)
真的很简单 - 对吧?所以我想看看是否有办法将这段代码添加到我的 swift 项目中。
尝试 #1 - 将我的代码添加到“umbrella header?” GDL90.h
我添加了我的文件并收到警告 Include of non-modular header inside framework module 'GDL90'
好的,那不是骰子。
尝试 2
我想我需要制作一个模块映射文件。
所以我创建了一个名为 ${SRCROOT}/GDL90/EGM96
的目录,并在其中创建了 EGM96.module.modulemap
module EGM96 {
header "GeoidCalculator.h"
export *
}
然后在我的一个 swift 文件中我有 import EGM96
似乎没有找到。
在我的构建设置中我有:
Define Modules
已打开,我正指向我的 模块映射文件 项目
modulemap
文件
我是不是漏掉了什么??