图文教你怎样为 xcode 添加环境变量,不同环境可更换不同 APPNAME,如 DEBUG , release ,test 等

一般我们xcode 会默认给我们配置两种模式,debug 和 release , 但有时候这两种模式,并不能满足我们的需求,比如我们需要一个测试环境,以供测试打包测试,这个时候我们就可以为xcode添加环境变量。

我们点击我们的工程,然后选择edit scheme,会看到这样

屏幕快照 2018-09-27 下午7.58.57.png

我们这时候需要添加一个test,想我这样选择,进入这个界面,


屏幕快照 2018-09-27 下午8.00.11.png

可以看到,这里我已经添加了一个 test 模式,是这样添加的,点击这个地方的加号,选择第一个,因为我们需要 debug ,

屏幕快照 2018-09-27 下午8.00.53.png

这时候我们就多了一个test模式了,再回到第一步的位置,可以看到多了一个test环境,

屏幕快照 2018-09-27 下午8.01.42.png

,然后点击我们的 targets,build settings,搜索 Prepro 相关的关键字,可以看到这样,在最下面有个,Preprocessor Macros,

屏幕快照 2018-09-27 下午8.03.39.png

这样之后,我们就可以在代码里面用我们的环境变量了,比如不同的环境 server 地址不同,那么久更换地址,做不同的定义就可以了,这里简单举例,

屏幕快照 2018-09-27 下午8.04.34.png

那如何根据不同环境设置 APP 的 NAME呢,看这里,

屏幕快照 2018-09-27 下午8.05.04.png

点击加好之后,我们输入一个环境变量的名字,这里我输入的是 DISPLAY_NAME,然后拉倒最下面找,User-Defined,然后找到自己定义的那个环境变量,然后后面我改成了,debug,test,release,就是app的名字,


屏幕快照 2018-09-27 下午8.07.15.png

接下来,我们到我们项目的info.plist,找到Bundle Name,

屏幕快照 2018-09-27 下午8.08.39.png

改成 ${刚才的环境变量的名字},其实这里和shell一样,然后运行,可以看到,

屏幕快照 2018-09-27 下午8.09.38.png

名字对上了,但这里我发现,release 下名字不会改变,不知道是不是我操作有问题,希望大家告诉我一下。

修改不同环境APP图标也是一样的,大家可自行网上查找,这里我主要是用这些环境变量,比如SDWebImage 里面,要支持webp格式的图片,需要在不同的模式下面加上SD_WEBP=1,个人觉得和这个道理是一样的,我们可以做个试验,我们在刚才的模式下面,随便添加一个环境变量,比如就叫COLOR,

先定位到这个位置

屏幕快照 2018-09-27 下午8.12.43.png

然后我们加一个

屏幕快照 2018-09-27 下午8.13.14.png

然后我们测试一下代码,

屏幕快照 2018-09-27 下午8.13.47.png

结果是背景色也变成了红色。

从上面可以学习到环境变量的添加和用法,个人觉得还是比较有用的,个人见解,如果有什么不对的地方,一定要评论告诉我,谢谢,共勉

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容