在可可触摸框架的框架模块内包含非模块化头文件

Posted

技术标签:

【中文标题】在可可触摸框架的框架模块内包含非模块化头文件【英文标题】:Include of non-modular header inside framework module with cocoa touch framework 【发布时间】:2018-01-23 14:00:22 【问题描述】:

我将 cocoa touch 框架 (A) 与 swift 和 Objective-c 文件混合,并嵌入了 3rd 方框架(没有 pod)。然后我将此框架 A 添加到我的应用程序中,并在内部收到有关非模块化标头的错误...,但此错误是针对第 3 方框架的标头的。我已将允许非模块化包含设置为“是”。

任何想法,我该如何解决这个问题? 谢谢

【问题讨论】:

【参考方案1】:

在文件检查器中将头文件目标成员从 Project/Private 更改为 Public。如果这不起作用,请确保您仅将框架作为头文件而不是实现文件导入。还要检查导入是否在实现文件中完成。

【讨论】:

你的意思是第三方框架的头文件吗?如果是这样,文件检查器中没有这样的选项。也不能在实现文件中导入,因为在头文件中,从框架的头文件中引用了typedef int

以上是关于在可可触摸框架的框架模块内包含非模块化头文件的主要内容,如果未能解决你的问题,请参考以下文章

构建纯Swift可可触摸框架

在可可触摸框架中隐藏实现

错误:可可pod框架的“没有这样的模块”

在框架模块中包含非模块化标头

可可触摸框架资产在 App Project 中不可见

如何在iOS中构建Cocoa触摸框架?