我习惯为OSX应用程序创建Release模式,我将构建模式切换到Release,并将调试器设置为None。这将从应用程序中删除断点信息并对其进行优化。
虽然我可以为IOS应用程序设置Release模式,但是无法将调试器设置为None。并且,在发布模式中,断点仍然受到XCode 5.5.1的尊重,它告诉我调试信息仍然被编译到应用程序中。
如何确保我的IOS应用程序尽可能保持原始状态,并且没有调试信息,并且在设备上运行时不会触发Xcode中的断点?
感谢。
编辑:解决方案是设置"生成调试符号"在发布版本中为否。
答案 0 :(得分:1)
启用(或不启用)断点不会更改代码的大小。您的发布方案应将“优化级别”-Os,“默认隐藏的符号”设置为“是”和“将复制期间的调试符号”设置为“是”。所有这些都是新项目的默认选项,所以你真的不需要改变任何东西。
即使在发布版本中,断点仍然可以正常运行,因为符号信息与构建的产品分开存储。
答案 1 :(得分:0)
我认为你对断点与调试符号感到困惑。默认情况下,您的发布版本应从最终产品中删除调试符号。但是,这并不能阻止您将调试器附加到它上面。您可以将调试器挂钩到任何您想要的应用程序(大多数情况下是真的),但是如果调试符号是条带化的,那么您只能看到汇编指令。当您尝试从自己的代码中进入Apples框架时,就会看到这一点。