在iOS開發(fā)中,對于同一個項目,會有不同的版本,如測試版和正式版,App Store版和企業(yè)版,這些版本之間大部分是相同的,只是部分有些差異。在調(diào)試或者打包測試時需要不停的修改參數(shù),比較繁瑣,其實(shí)Xcode就提供了一些途徑來管理這些版本,這就是我們要提到的Target和Scheme。
Target的配置
Target可以看作是工程的輸出目標(biāo),它保存了當(dāng)前工程的所有配置,通過它來管理項目。
1.復(fù)制Target
選中一個Target,再右擊菜單中選擇Duplicate,復(fù)制當(dāng)前的Target,新的Target以當(dāng)前的名字+copy命名
2.修改名稱
新的Target與復(fù)制Target的配置基本相同,區(qū)別在于Product Name和Info.plist File參數(shù)。同時,項目里自動添加了一個新的plist文件,Info.plist就指向這個新的plist文件,來保存工程的配置。多數(shù)情況下,我們修改Target 的名字和Product Name,選中Target后,回車,鍵入新的名稱即可修改Targe名字。
3.配置參數(shù)
修改Target指向的plist文件,就可以修改Bundle Name和Bundle identifier。更多的是配置一下預(yù)處理參數(shù),在Build Settings選項卡的Preprocessor Macros配置中,可以鍵入標(biāo)識來區(qū)別版本,比如WGDEBUG=1,代碼中就可以用這個參數(shù)區(qū)別正式與測試。

當(dāng)前的Targets

Scheme的配置
在Schem欄的菜單中選擇Manage Schemes,對話框中點(diǎn)擊"+"號,Target就選擇復(fù)制的Target,Name鍵入Scheme的名稱。現(xiàn)在項目就有2個Scheme了。

現(xiàn)在我們就有2個Scheme,分別對應(yīng)2個Target。有兩種方式來區(qū)別這2個版本
1.使用預(yù)處理參數(shù)
比如前邊配置的WGDEBUG標(biāo)識,判斷版本,進(jìn)行不同的處理
#if WGDEBUG
//code
#else
//code
#endif
2.配置Target的Plist文件,Build Settings。
注意,當(dāng)前有多個Target時,如果導(dǎo)入文件,需要在對話框中的Add to targets里勾選新的Target。否則編譯該Target時將會出錯。