xcconfig的使用

1.什么是xcconfig

xcconfig是用來管理Configuration的文件敌土。在xcconfig可以指定對應(yīng)的key值感猛,在編譯的時(shí)候能夠去修改target build Setting中對應(yīng)的value值

2.xcconfig有什么用

一個(gè)app中已經(jīng)存在了debug和release環(huán)境识藤,但是在實(shí)際開發(fā)中可能需要更多的環(huán)境配置。就比如yoyi來說,debug是用在開發(fā)階段,release是用在測試階段元旬,而新多出來的distribute是用在發(fā)布正式包的階段。對于每個(gè)階段來說都要調(diào)用不同的崩潰檢測系統(tǒng)守问,數(shù)據(jù)統(tǒng)計(jì)接口匀归,以及后臺(tái)服務(wù)器接口。

為了實(shí)現(xiàn)上述情況耗帕,能實(shí)現(xiàn)的有兩張方案:

1.第一種方案通過使用target來解決穆端,公用的部分設(shè)置在project,每個(gè)環(huán)境根據(jù)各自特點(diǎn)自定義某些值仿便。這樣做帶來的后果就是targe的數(shù)量會(huì)明顯增多体啰,而targe增多帶來的后果是當(dāng)需要增加新的extension的時(shí)候,工作良會(huì)增大嗽仪,并且多環(huán)境的管理難度家具

2.第二種方式就是采用xcconfig來管理

3.如何使用xcconfig

1.去到XCode -> New File -> Configuration Setting File -> Next


2.輸入你的文件名稱荒勇,并且勾選對應(yīng)的target

3.為你對應(yīng)的configurations配置對應(yīng)的xcconfig文件。由于使用的Cocopods钦幔,會(huì)出現(xiàn)Cocopods創(chuàng)建的xcconfig枕屉,這里的target中需要選擇Cocopods中創(chuàng)建的xcconfig文件,否則運(yùn)行時(shí)會(huì)報(bào)錯(cuò)鲤氢;也可以在自己的xcconfig文件中加入一下代碼

#include "Pods/Target Support Files/Pods-YourName/Pods-YourName.debug.xcconfig"

4.添加一個(gè)新的configurations搀擂,點(diǎn)擊右下腳加號(hào),可以新增一個(gè)新的configurations

5.我們來根據(jù)不同的環(huán)境修改app的名稱

首先pod install卷玉,將新創(chuàng)建的xccconig文件重新安裝避免出錯(cuò)哨颂。

如此,直接修改APP_DISPLAY_NAME的值便可修改app的名字相种。而在Edit Scheme中切換不同的環(huán)境威恼,也可以切換對應(yīng)的app名字

5.為不同的環(huán)境添加宏標(biāo)示

我們可以創(chuàng)建一個(gè)公共的common.xcconfig文件。在該文件中如此寫入代碼寝并,并在其他xcconfig中引用該文件

之后便可通過代碼箫措,來區(qū)分環(huán)境。


4.使用xcconfig中的一些坑

我在開發(fā)的時(shí)候遇到了一個(gè)問題衬潦,當(dāng)我想通過xcconfig來配置PRODUCT_BUNDLE_IDENTIFIER的時(shí)候斤蔓,xcconfig中的信息總是沒有辦法成功的顯示。后來我發(fā)現(xiàn)镀岛,xcconifg的配置和工程默認(rèn)配置弦牡、手動(dòng)在build setting配置具備特殊的優(yōu)先級(jí)

a、project默認(rèn)配置是最低優(yōu)先級(jí)漂羊,因?yàn)槭亲罨A(chǔ)的配置驾锰;

b、target配置基于project走越,但target默認(rèn)會(huì)添加一些配置椭豫,優(yōu)先級(jí)比上面高;

c旨指、xcconfig的配置是target某個(gè)config的配置捻悯,優(yōu)先級(jí)比上面高;

d淤毛、target的build setting中直接添加的配置項(xiàng)今缚,優(yōu)先級(jí)比上面高;

所以當(dāng)build setting中已經(jīng)存在了你所配置的值時(shí)低淡,你是無法跨越這個(gè)優(yōu)先級(jí)的姓言,所以也必然導(dǎo)致你無法去執(zhí)行你的xcconfig文件內(nèi)容。修改方式也很簡單蔗蹋,去到target中的build setting中何荚,將key值對應(yīng)的value刪除(command+刪除鍵,即可刪除)猪杭。這樣就能執(zhí)行你的xcconfig了

5.demo:https://github.com/HYDupup/test_xcconfig

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末餐塘,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子皂吮,更是在濱河造成了極大的恐慌戒傻,老刑警劉巖税手,帶你破解...
    沈念sama閱讀 211,743評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異需纳,居然都是意外死亡芦倒,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門不翩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兵扬,“玉大人,你說我怎么就攤上這事口蝠∑髦樱” “怎么了?”我有些...
    開封第一講書人閱讀 157,285評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵妙蔗,是天一觀的道長傲霸。 經(jīng)常有香客問我,道長灭必,這世上最難降的妖魔是什么狞谱? 我笑而不...
    開封第一講書人閱讀 56,485評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮禁漓,結(jié)果婚禮上跟衅,老公的妹妹穿的比我還像新娘。我一直安慰自己播歼,他們只是感情好伶跷,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,581評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著秘狞,像睡著了一般叭莫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上烁试,一...
    開封第一講書人閱讀 49,821評(píng)論 1 290
  • 那天雇初,我揣著相機(jī)與錄音,去河邊找鬼减响。 笑死靖诗,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的支示。 我是一名探鬼主播刊橘,決...
    沈念sama閱讀 38,960評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼颂鸿!你這毒婦竟也來了促绵?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,719評(píng)論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎败晴,沒想到半個(gè)月后浓冒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,186評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡位衩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,516評(píng)論 2 327
  • 正文 我和宋清朗相戀三年裆蒸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了熔萧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片糖驴。...
    茶點(diǎn)故事閱讀 38,650評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖佛致,靈堂內(nèi)的尸體忽然破棺而出贮缕,到底是詐尸還是另有隱情,我是刑警寧澤俺榆,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布感昼,位于F島的核電站,受9級(jí)特大地震影響罐脊,放射性物質(zhì)發(fā)生泄漏定嗓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,936評(píng)論 3 313
  • 文/蒙蒙 一萍桌、第九天 我趴在偏房一處隱蔽的房頂上張望宵溅。 院中可真熱鬧,春花似錦上炎、人聲如沸恃逻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寇损。三九已至,卻和暖如春裳食,著一層夾襖步出監(jiān)牢的瞬間矛市,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評(píng)論 1 266
  • 我被黑心中介騙來泰國打工诲祸, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留浊吏,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,370評(píng)論 2 360
  • 正文 我出身青樓烦绳,卻偏偏與公主長得像卿捎,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子径密,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,527評(píng)論 2 349