Can/Should我有多个Objective-C桥接header?
Can/Should I have more than one Objective-C bridging header?
我正在尝试将一些新的 Siri 集成到我的应用程序中。我有一个旧的 Objective-C header,我一直在我的整个项目中使用它,但现在这个新的 Siri Intents 目标也需要一个 header。所以现在我有两个 objective-c 桥接 headers,一个用于主项目及其目标,另一个用于 Siri Intents 目标。
它没有像我预期的那样工作。我收到 "unresolved use of identifier" 错误,指的是我正在尝试导入的 objective-C 类 之一。
在我的以下构建设置中:
- 项目:主要桥接目录header
- 目标:
- selfTitledTarget:主要桥接目录header
- SiriIntent:新桥接目录header
为了安全起见,我的主要桥接 header 包括所有新桥接 header 的导入。
在开始新的 Siri 实现之前,我没有遇到过这个问题。我有另一个项目,它只是 Siri 的实现,那个工作正常,所以我猜我的问题是因为我有多个桥接 headers?
这不是 header:每个目标一个桥接 header 正是它应该如何工作。
问题是引用的 class 没有被编译到 intent 目标中。在文件检查器 (⌘⌥1) 中检查目标成员资格窗格,并将共享源文件设置为包含在需要它们的所有目标中。
Project: directory for main bridging header
Targets:
selfTitledTarget: directory for main bridging header
SiriIntent: directory for new bridging header
这毫无意义。项目没有桥接 header;目标做。他们的桥接 header 构建设置不是目录;它们是文件。
因此,第一步是确保只有两个桥接 header,每个目标一个。
之后,我建议在两个桥接 header 中导入所有 Objective-C .h
文件。它不会造成伤害,它应该可以解决您的问题。
我正在尝试将一些新的 Siri 集成到我的应用程序中。我有一个旧的 Objective-C header,我一直在我的整个项目中使用它,但现在这个新的 Siri Intents 目标也需要一个 header。所以现在我有两个 objective-c 桥接 headers,一个用于主项目及其目标,另一个用于 Siri Intents 目标。
它没有像我预期的那样工作。我收到 "unresolved use of identifier" 错误,指的是我正在尝试导入的 objective-C 类 之一。
在我的以下构建设置中:
- 项目:主要桥接目录header
- 目标:
- selfTitledTarget:主要桥接目录header
- SiriIntent:新桥接目录header
为了安全起见,我的主要桥接 header 包括所有新桥接 header 的导入。
在开始新的 Siri 实现之前,我没有遇到过这个问题。我有另一个项目,它只是 Siri 的实现,那个工作正常,所以我猜我的问题是因为我有多个桥接 headers?
这不是 header:每个目标一个桥接 header 正是它应该如何工作。
问题是引用的 class 没有被编译到 intent 目标中。在文件检查器 (⌘⌥1) 中检查目标成员资格窗格,并将共享源文件设置为包含在需要它们的所有目标中。
Project: directory for main bridging header
Targets:
selfTitledTarget: directory for main bridging header
SiriIntent: directory for new bridging header
这毫无意义。项目没有桥接 header;目标做。他们的桥接 header 构建设置不是目录;它们是文件。
因此,第一步是确保只有两个桥接 header,每个目标一个。
之后,我建议在两个桥接 header 中导入所有 Objective-C .h
文件。它不会造成伤害,它应该可以解决您的问题。