1. 程式人生 > >Xcode 多個target的設定

Xcode 多個target的設定

轉載自:https://blog.csdn.net/ycf03211230/article/details/80506505

前言: 
1、我們開發一般分為開發、生產等環境,有的公司可能還有測試等環境,那麼打包ipa時,需要修改url、證書等,有的可能不同的環境,也有不同的icon,啟動圖等。 
2、當然也可以將相關功能拿出來複用,換成一個新的app。 
3、有的不僅是iPhone手機的app,也要開發ipad的,介面什麼的都一樣,只是有的地方需要優化。 
此時,我們可以建立多個target,對應同一份程式碼,就不用拷貝出來一份。修改了同一份程式碼,在iPhone、ipad上都是一樣的。

下面介紹如何操作: 
1、先新建一個project,我們可以看出,一個target 對應一個product 

這裡寫圖片描述
一個MoreTargets 對應一個 MoreTargets.app 
等再建一個target,也會出現器對應的product
2、在Targets選中並右擊,選擇Duplicate,會自動生成一個XXX copy、一個XXX.app和XXX-Info.plist一共有3個檔案 

3、3、我們看到新建的target,名字顯示的不明顯,我們可以修改其名稱 
選中該target,雙擊即可修改名稱,target名稱修改好之後,其product的名稱也對應修改了 


4、接下來我們修改plist名稱,只需單擊xxx.plist檔案,注意雙擊的話不行哦 
命名規則:必須與target名稱相同 


5、然後在該Target的Building Setting,搜尋 Packing,將.plist對應的名稱改下 


6、我們還要修改對應target的Schema的名稱:導航欄上的Product–Schema –Manage Schemas… 


注意修改名稱時,需要單擊,不能雙擊。名稱與target名稱一致即可
7、我們設定幾個巨集,來區分當前執行的是哪個版本,在不同的target的Building Setting 中,搜尋preprocess macros 
設定不同的巨集 


#ifdef  kTargetDistribution
    NSLog(@"當前是生產的APP");
#elif kTargetDevelop
    NSLog(@"當前是開發的APP");
#else
#endif
1
2
3
4
5
6
前面都是對debug模式的設定,當然也可以在release中進行相關設定

8、下面我們來進行相關的icon設定,在Assets中 


然後在對應icon中拖入對應的圖片

在新建一個icon,點選右下角的+,– App icon & Launch Images – New IOS App Icon 


也做如上的設定,再拖入相關的圖片

9、在新建的target中–Buillding Setting 中搜索 asset 將其icon選擇我們剛剛設定的icon 


10、我們可以選擇不同的target,進行執行啦。注意,要在同一個模擬器或者真機執行,證書是不一樣的哦