有時(shí)候楼雹,我們需要給一個(gè)iOS工程構(gòu)建多個(gè)馬甲應(yīng)用熄驼,這些馬甲應(yīng)用共享同一份代碼,但是productName烘豹,bundle id,api環(huán)境诺祸,還有一些參數(shù)設(shè)置是不同的携悯,如果每個(gè)馬甲應(yīng)用都創(chuàng)建一個(gè)新工程,就太耗時(shí)耗力筷笨,而且每次需求有變化憔鬼,還得改多份代碼才可以。
以上的方法太low了胃夏,我們有更好的方法轴或,那就是構(gòu)建多個(gè)scheme來實(shí)現(xiàn)。
第一步仰禀,構(gòu)建scheme照雁,需要幾個(gè)馬甲應(yīng)用就構(gòu)建幾個(gè)scheme,如圖:
第二步答恶,添加configurations饺蚊,在左邊選擇PROJECT,在info面板添加,如圖:
第三步污呼,編輯scheme,首先切換到需要編輯的scheme包竹,點(diǎn)擊Edit Scheme燕酷,然后進(jìn)行編輯籍凝,如圖:
第四步饵蒂,為每個(gè)scheme編輯不同的bundle id等參數(shù),在target的Build Settings中根據(jù)需要去配置挤渐,如圖編輯bundle id:
然后添加預(yù)處理宏(Preprocessor Macros)苹享,在代碼中通過判斷預(yù)處理宏來切換不同的api環(huán)境,如圖: