Xcode 设置代码只在 Debug 下起效的几种方式

栏目: 编程工具 · IOS · 发布时间: 7年前

内容简介:在日常开发中,我们通常会在 Debug 开发模式下写很多测试代码,或者引入一些测试专用的Xcode 在 Debug 模式下已经自动帮我们定义了宏

在日常开发中,我们通常会在 Debug 开发模式下写很多测试代码,或者引入一些测试专用的 .a 静态库或 .framework 动态库,也会通过 CocoaPods 引入一些第三方测试调试 工具 等;但我们往往不希望这些测试代码和测试用的库(Library/Framework)在 Release 正式包中被引用或导入,如何做到呢?

  • .h/.m 文件中的测试代码

Xcode 在 Debug 模式下已经自动帮我们定义了宏 DEBUG=1 ,所以我们可以在代码文件中把相关测试代码写在编译预处理命令 #ifdef DEBUG ... #endif 中间即可,如下图所示,这也是我们最常见的一种用法。

Xcode 设置代码只在 Debug 下起效的几种方式

  • 测试用的 .a 静态库或 .framework 动态库

对于通过拖拽的方式直接在工程中添加一些用于测试 .a 或者 .framework ,我们可以在 Targets - Build Settings - Search Paths 中分别设置 Library Search PathsFramework Search Paths 这两个选项,如下图所示(其中 libWeChatSDK.a 放在 WeChatSDK 目录中,而 TencentOpenAPI.framework 放在 QQSDK 目录中,假设它们只在测试时会用到),我们可以移除 Release 模式下测试用的 .a.framework 所在的目录,只在 Debug 下保留,这样在打 Release 包时就不会包含这些库了。(当然在代码中使用到这些测试库的地方也要像上述一样写在 DEBUG 中间)

Xcode 设置代码只在 Debug 下起效的几种方式

  • CocoaPods 引入的测试库

对于通过 CocoaPods 方式引入的第三方测试库,就很方便了,我们可以配置 configurations 选项让它们只在 Debug 下生效,如下图:

Xcode 设置代码只在 Debug 下起效的几种方式


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构 Python语言描述

数据结构 Python语言描述

[美] Kenneth A. Lambert 兰伯特 / 李军 / 人民邮电出版社 / 2017-12-1 / CNY 69.00

在计算机科学中,数据结构是一门进阶性课程,概念抽象,难度较大。Python语言的语法简单,交互性强。用Python来讲解数据结构等主题,比C语言等实现起来更为容易,更为清晰。 《数据结构 Python语言描述》第1章简单介绍了Python语言的基础知识和特性。第2章到第4章对抽象数据类型、数据结构、复杂度分析、数组和线性链表结构进行了详细介绍,第5章和第6章重点介绍了面向对象设计的相关知识、......一起来看看 《数据结构 Python语言描述》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具