我的iOS项目有五个方案:本地开发,集成,QA,演示和制作。每种方案都使用不同的配置来控制网络轮询频率,API端点,分析等内容。
同样,我们有五个相应的目标:本地开发,集成,QA,演示和生产。每个目标都有几个用户定义的构建设置,其中包含API密钥,时序的数值等。
我们的应用程序的Info.plist
文件使用${SOME_ENDPOINT_URL}
等应用程序变量来绘制相应的用户定义构建设置。
要检索变量,我会执行以下操作:
[[[NSBundle mainBundle] infoDictionary] valueForKey:@"Some Endpoint URL"]
这将对应于用户定义的构建设置,如下所示:
"Some Endpoint URL" = ${SOME_ENDPOINT_URL}
我现在正在研究如何正确配置项目以执行单元和逻辑测试。
要构建测试以确定环境是否配置正确,我不确定最佳做法是什么。
答案 0 :(得分:1)
以下是我的工作。
的Info.plist
.h文件
在.h文件中定义配置设置(例如config.h)
#if defined (CONFIG_FILE)
#import CONFIG_FILE
#endif
在代码中导入config.h
为每个方案使用预处理器宏来选择目标.h文件。
-DCONFIG_FILE=local-env-config.h