我正在开发我自己的 Swift 框架,以便在我的两个应用程序之间私下使用。我正在使用 Carthage 来管理该依赖项和其他依赖项。
我终于完成了框架的开发并将其连接到我的一个应用程序,毫不奇怪,该应用程序在新框架代码中崩溃了。
我想调试框架代码。我看过一些讨论的文章:
- 复制 dsym 文件和
- 使用调试信息进行编译。
不幸的是,这些文章遗漏了很多细节(而且我不是经验丰富的 iOS 开发人员或 Carthage 用户,无法隐含地了解它们)。
有人可以提供有关如何配置应用程序的方法,以便不优化私有(private)框架代码并且我可以从托管应用程序进入框架代码吗?
谢谢 彼得...
最佳答案
这里有两个选项。
1。主项目中的调试框架
按照 Carthage guide 的第 4 步进行操作然后您应该能够逐步调试您的私有(private)框架。
With the debug information copied into the built products directory, Xcode will be able to symbolicate the stack trace whenever you stop at a breakpoint. This will also enable you to step through third-party code in the debugger.
2。在主项目中修改框架
- 在本地克隆私有(private)框架源。
- 将框架的
.xcodeproj
拖到您的主项目中。 (不要在 Xcode 中打开这两个项目)。 - 删除 crthage 条目
carthageInput.xcfilelist & carthageOutput.xcfilelist
- 从
project -> target -> general -> frameworks libraries and embedded content
中删除框架,然后使用+
符号从拖动的项目中添加它。然后你会在框架名称旁边看到Embed & sign
现在您可以在您的私有(private)框架上进行开发,并在您的主项目中测试它们。一旦完成
- 从主项目中删除对框架
.xcodeproj
的引用。 - 创建您的框架的新版本。
- 使用标准
carthage update
更新主项目以使用更新的版本
关于ios - 使用迦太基时调试(拥有)框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38862464/