ios – 在Swift应用程序中使用Obj-C子项目
发布时间:2020-12-14 18:00:52 所属栏目:百科 来源:网络整理
导读:我的团队有一些完整的Obj-C库,我们喜欢在我们的项目中重用.为此,我们通常设置一个git子模块,然后将其作为子项目添加到 xcode项目中(使用目标依赖项,链接二进制文件库并更新用户标题搜索路径) 到目前为止,它只在完整的Obj-C项目中完成,我现在正尝试在Swift项
我的团队有一些完整的Obj-C库,我们喜欢在我们的项目中重用.为此,我们通常设置一个git子模块,然后将其作为子项目添加到
xcode项目中(使用目标依赖项,链接二进制文件库并更新用户标题搜索路径)
到目前为止,它只在完整的Obj-C项目中完成,我现在正尝试在Swift项目中使用它,但迄今为止收效甚微.我试图添加briding-header文件,在项目中引用它并填充它如下: #import "MyLibraryHeader.h" 目标标题位于用户标题搜索路径中. 它让我构建,但在我的Swift文件中使用它时: let test = MyLib(); let secondTest = MyLib.classMethod1("some_arguments"); 我在secondTest上得到一个EXC_BAD_INSTRUCTION,以及调试器中的以下日志: (lldb) po test error: <EXPR>:1:1: error: use of unresolved identifier 'test' (lldb) po secondTest error: Error in auto-import: failed to get module 'MyProject' from AST context: /Users/siegele/Sources/MyProject_iOS/MyProject/Classes/MyProject-Bridging-Header.h:12:9: error: 'MyLibraryHeader.h' file not found #import "MyLibraryHeader.h" ^ failed to import bridging header '/Users/siegele/Sources/MyProject_iOS/MyProject/Classes/MyProject-Bridging-Header.h' 发现以下问题没有答案:Xcode 6 crashing when using Objective-C subproject inside Swift 任何帮助,将不胜感激. 解决方法
我按照可以在这里找到的HockeyApp教程:
http://support.hockeyapp.net/kb/client-integration-ios-mac-os-x/integrate-hockeyapp-for-ios-as-a-subproject 最后,我在正确的轨道上,但搞砸了标题搜索路径: >将子项目xcodeproj添加到工作区>在主项目上:将二进制文件与库链接,并添加子项目产品库(奖励点:也将其添加为目标依赖项)>相应地更新标题搜索路径(不是用户标题搜索路径)>在主项目Bridging-Header.h文件中导入Library.h (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |