Xcode單專案多版本(Target)
之前因為APP專案需要多版本,但是每個版本其實是大同小異的,所以就查詢了一下怎麼達到此功能,我記得我查到的大致上有3種方式,我就選擇了我覺得最簡單也最符合的方式,使用Target來區分
第一步-複製Target
Target是可以自行加入的,但因為專案其實大部分是共用的,所以使用複製會比較方便。
在原先的Target上點選右鍵,選擇Duplicate
第二步-修改Target名字
Target複製出來後會在原先的Target後加入copy字,所以要改成我們要的名字會比較好辨識,直接雙擊就能改名
第三步-修改Info.plist
剛剛複製出Target後,Xcode會自行幫我們建立一個Info.plist,但位置和名字可能需要修改一下
把它移到想要的地方並且修改成想要名字,我就直接先移到原先專案資料夾就好了
第四步-修改Schemes名字
點擊左上暫停鈕右邊的選擇Schemes,會看到他也是原先專案名字後面加上copy,我們就是要改掉他,這樣以後比較好辨識目前要運行的是哪個專案,選擇最下面的Manage Schemes…
然後直接修改Scheme名字後關掉就可以了
第五步-選擇info.plist
選到新的TestTarget Second ,然後選擇choose info.plist File…
然後選擇他要的info.plist ,在這裡是TestTargetSecond.plist
第六步-修改Bundle identifier,記得要修改Bundle Id
第七步(END)-建立識別字
先選擇原先專案Target並切換到Build Settings,然後再searcher bar上輸入other swift,會找到Other Swift Flags,然後再TestTarget下面的空格雙擊,然後增加識別字,注意識別字前面必須加入-D,所以我輸入-DFIRST
切換到TestTarget Second也是一樣的地方,我輸入-DSECOND
使用部分:
在程式碼要怎麼做出識別呢?
以下就來簡單示範,直接到ㄧ個viewController,然後使用#if(elseif) #endif來作識別
在左上方切換Scheme,就可以看到印出對應版本的字串
設置個別APP Icon:
到Assets.xcassets,新增一個New iOS App Icon,然後將對應的圖片放好
再到Target下修改App icons and Launch Images內的App Icon Source就可以了!