iOS开发好文iOS开发iOS开发技巧

如何在iOS项目中创建多个target?

2016-04-23  本文已影响7238人  Colin_狂奔的蚂蚁

现在的项目里面创建了多个target(分别是:生产环境、测试环境、开发环境),每个target对应一个环境,并配置不同的info.plist文件,这样做的好处是不用开发人员每次都要去手动开启/注释某些代码去发布,而是先配置好,到时候直接切换target就可以打包上线了,是不是很期待呢?

创建不同的target

直接贴图

点击完成后,将名称改为projectName-dev和projectName-test,默认的projectName当生产环境。

⚠️:创建不同的target时,有个细节需要注意,那就是你的项目如果是xcworkspace时,先pod install后再去按照贴图上面的操作去完成,否则,先创建再pod install,projectName-dev和projectName-test就会出现报错,报错原因是pod的配置信息没完成或文件路径没索引到(我之前就遇到过,试了好多次,还好经过测试跳过了这个坑,😄)。

改名称

targets分别改成:<#projectName#>、<#projectName#>-dev、<#projectName#>-test

scheme也分别改成:<#projectName#>、<#projectName#>-dev、<#projectName#>-test

info.plist分别改成:info.plist、<#projectName#>-dev-info.plist、<#projectName#>-test-info.plist

⚠️:

1、这里的三个环境都是一一对应的。

2、.plist的作用就是可以配置不同的信息,比如:Bundle name、Bundle versions string, short、Bundle version等,以区分下不同环境。

别忘了在build setting–>Info.plist File配置

例如:

//:configuration = DebugINFOPLIST_FILE = IOS-WeidaiCreditLoan/IOS-WeidaiCreditLoan-dev-Info.plist

//:configuration = ReleaseINFOPLIST_FILE = IOS-WeidaiCreditLoan/IOS-WeidaiCreditLoan-dev-Info.plist

//:completeSettings = someINFOPLIST_FILE

预定义宏(Build Setting–>Preprocessor Macros)

这个宏是一个全局宏,在所有/整个工程的代码中都是有效的,我们可以在这里添加上环境与处理的宏(例如:WD_Environment_Mode,这个是随便自己取的)

然后在.pch文件中

/**

WD_Environment_Mode

0:生产环境

1:测试环境

2:开发环境

*/#ifdef WD_Environment_Mode

#ifWD_Environment_Mode == 0

#defineWDAPIServerUrl   @""

#defineJSPatchAppKey     @""

#elifWD_Environment_Mode == 1

#defineWDAPIServerUrl @""

#defineJSPatchAppKey  @""

#elifWD_Environment_Mode == 2

#defineWDAPIServerUrl @""

#defineJSPatchAppKey  @""

#else

#warning"未匹配环境"

#endif

到此,在项目中创建多个target的目的就已经达到了。

iOS技术交流:566912706

上一篇下一篇

猜你喜欢

热点阅读