我有一个使用TestFlight SDK和其他调试框架的应用程序,我想为App Store版本构建自动删除。
我创建了一个新的“App Store”构建配置,但是我如何教Xcode我希望在这个构建中包含哪些框架?如何使用这些框架的代码成为有条件的,以便从App Store发布版本中排除?
答案 0 :(得分:2)
您有三个对您有利的流程组件,以删除多余的代码。
首先,您有预处理器。如果用#if DEBUG
语句包装TestFlight导入和代码,那么你会没事的。 #if
语句的设计使得预处理器将删除您不需要的额外语句。它不会成为编译器。
其次,编译器适合您。编译器很聪明地从发布版本中剥离死代码。如果你编写代码并且不使用它,它就不会进入最终的二进制文件,即使它通过了预处理器。
第三,如果你真的关心那些框架进入你的发布版本,你可以在Xcode中创建一个额外的目标,并更改该目标的链接器选项。这不是必需的,但如果您愿意,可以选择。这是最接近您的“明确排除”。
老实说,相信你的编译器和链接器,除非他们给你理由不这样做。