Swift-單項(xiàng)目多Target開發(fā)

前言

  • 多端情況旦部,商家端和用戶端等祈搜,不同端的App名字、圖標(biāo)士八、啟動(dòng)界面等不同容燕,以及一些模塊上的不同;
  • 多環(huán)境情況婚度,開發(fā)環(huán)境蘸秘、測(cè)試環(huán)境、生產(chǎn)環(huán)境等蝗茁,為了更好的區(qū)分需要顯示不同的App名字醋虏、圖標(biāo)等。

新建Target

  • 通過(guò)duplicate創(chuàng)建Target時(shí)內(nèi)部操作
    1.建立scheme環(huán)境
    2.生成Target
    3.生成info.plist文件
拷貝原項(xiàng)目
  • 默認(rèn)情況生成的target名字會(huì)以項(xiàng)目名后跟copy來(lái)命名哮翘,此時(shí)為了便于閱讀颈嚼,可同步修改以下三個(gè)地方的命名
    1.scheme環(huán)境名
    2.target名稱
    3.info.plist文件名
    注意修改plist文件名后,需要同步修改packageing中info.plist file關(guān)聯(lián)
需要同步修改命名的地方

設(shè)置對(duì)應(yīng)App名字

  • 不同的版本需要展示的app名字

設(shè)置對(duì)應(yīng)App圖標(biāo)

1.在主Assets文件中新建AppIcon饭寺,設(shè)置對(duì)應(yīng)App圖標(biāo)名
2.與Primary App Icon Set Name參數(shù)進(jìn)行關(guān)聯(lián)

創(chuàng)建App Icon并關(guān)聯(lián)

設(shè)置登錄頁(yè)Storyboard

  • 不同版本需要展示的登錄頁(yè)
    1.創(chuàng)建.storyboard文件阻课,設(shè)置對(duì)應(yīng)登錄頁(yè)名
    2.選中對(duì)應(yīng)info.plist文件設(shè)置Launch screen file base name參數(shù)為對(duì)應(yīng)登錄頁(yè)名
創(chuàng)建并關(guān)聯(lián)登錄頁(yè)

為了便于管理與閱讀,我們可以單獨(dú)將對(duì)應(yīng)端的文件歸類至單獨(dú)的文件夾中

區(qū)分使用不同代碼

1.設(shè)置對(duì)應(yīng)的自定義標(biāo)識(shí)符艰匙,這里的Active Compilation Conditions與Other Swift Flags可以達(dá)到相同的效果限煞,但為更好的區(qū)分開發(fā)、測(cè)試员凝、生產(chǎn)環(huán)境署驻,建議在Other Swift Flags中添加標(biāo)識(shí)符,注意在Other Swift Flags中需要在標(biāo)識(shí)符前添加 -D,多個(gè)標(biāo)識(shí)符需要再每個(gè)標(biāo)識(shí)符前都添加上-D旺上,否則將報(bào)以下錯(cuò)誤

Showing Recent Issues
Command CompileSwiftSources failed with a nonzero exit code

對(duì)于Active Compilation Conditions則不需要添加-D前綴

標(biāo)識(shí)符設(shè)置

2.代碼層面的區(qū)分使用瓶蚂,這里與Release與Debug環(huán)境的區(qū)分使用相同

func test() {
  #if Buyer
    //買家端代碼
  #elseif Selller
    //賣家端代碼
  #endif
  //多端通用代碼
}

切換運(yùn)行與打包

直接選擇對(duì)應(yīng)的scheme進(jìn)行運(yùn)行與打包即可

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市抚官,隨后出現(xiàn)的幾起案子扬跋,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,378評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異逾柿,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)朴上,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)卒煞,“玉大人痪宰,你說(shuō)我怎么就攤上這事∨显#” “怎么了衣撬?”我有些...
    開封第一講書人閱讀 168,983評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)扮饶。 經(jīng)常有香客問(wèn)我具练,道長(zhǎng),這世上最難降的妖魔是什么甜无? 我笑而不...
    開封第一講書人閱讀 59,938評(píng)論 1 299
  • 正文 為了忘掉前任扛点,我火速辦了婚禮,結(jié)果婚禮上岂丘,老公的妹妹穿的比我還像新娘陵究。我一直安慰自己,他們只是感情好奥帘,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,955評(píng)論 6 398
  • 文/花漫 我一把揭開白布铜邮。 她就那樣靜靜地躺著,像睡著了一般寨蹋。 火紅的嫁衣襯著肌膚如雪牲距。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,549評(píng)論 1 312
  • 那天钥庇,我揣著相機(jī)與錄音,去河邊找鬼咖摹。 笑死评姨,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吐句,決...
    沈念sama閱讀 41,063評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼胁后,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了嗦枢?” 一聲冷哼從身側(cè)響起攀芯,我...
    開封第一講書人閱讀 39,991評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎文虏,沒(méi)想到半個(gè)月后侣诺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,522評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡氧秘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,604評(píng)論 3 342
  • 正文 我和宋清朗相戀三年年鸳,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丸相。...
    茶點(diǎn)故事閱讀 40,742評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡搔确,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出灭忠,到底是詐尸還是另有隱情膳算,我是刑警寧澤,帶...
    沈念sama閱讀 36,413評(píng)論 5 351
  • 正文 年R本政府宣布弛作,位于F島的核電站涕蜂,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏缆蝉。R本人自食惡果不足惜宇葱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,094評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望刊头。 院中可真熱鬧黍瞧,春花似錦、人聲如沸原杂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)穿肄。三九已至年局,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間咸产,已是汗流浹背矢否。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留脑溢,地道東北人僵朗。 一個(gè)月前我還...
    沈念sama閱讀 49,159評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親验庙。 傳聞我的和親對(duì)象是個(gè)殘疾皇子顶吮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,747評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容