Architectures
目標工程被編譯成可支持哪些指令集類型昏滴,而支持的指令集越多料祠,就會編譯出包含多個指令集代碼的數(shù)據(jù)包贾漏,對應生成二進制包就越大橙弱,也就是ipa包會變大。
Valid Architectures
限制可能被支持的指令集的范圍钞脂,也就是Xcode編譯出來的二進制包類型最終從這些類型產生揣云,而編譯出哪種指令集的包,將由Architectures與Valid Architectures(因此這個不能為空)的交集來確定
Build Active Architecture Only 定是否只對當前連接設備所支持的指令集編譯
當其值設置為YES冰啃,這個屬性設置為yes邓夕,是為了debug的時候編譯速度更快,它只編譯當前的architecture版本亿笤,而設置為no時翎迁,會編譯所有的版本栋猖。 所以净薛,一般debug的時候可以選擇設置為yes,release的時候要改為no蒲拉,以適應不同設備肃拜。
其中Xcode10 添加新的系統(tǒng)架構arm64e 支持iPhone XS、iPhone XS Max和iPhone XR等設備雌团。
Assets
Asset Pack Manifest URL Prefix 源包清單的下載路徑URL前綴
Embed Asset Packs In Product Bundle?是否將資源包嵌入產品的bundle中
Enable On Demand Resources? 是否開啟按需獲取資源功能
On Demand Resources Initial Install Tags?按需加載資源時的初始安裝資源文件標簽
On Demand Resources Prefetch Order? 按需加載資源時預加載的標簽順序
對于支持iOS 9.0及以后的app燃领,按需加載資源是默認開啟的。你也可以在target的build settings中手動更改锦援。
Build Locations
Build Products Paths?產品文件和編譯中間文件的根目錄猛蔽。產品文件和編譯時臨時文件都將放在這個目錄的子目錄中
Intermediate Build Files Path?編譯時臨時文件的存放位置。編譯中間文件格式為product name+.build灵寺,如MyProduct.build曼库。
Precompiled Headers Cache Path?預編譯頭文件緩存存放路徑。通過這個配置略板,Targets可以互相共享預編譯的頭文件
Build Options
? XCFramework 可以將多個平臺(包括iOS設備毁枯,iOS模擬器和Mac Catalyst)的二進制框架或庫捆綁到一個可分發(fā)的 .xcframework包中,開發(fā)人員可以在自己的應用程序中使用它叮称≈致辏可以將 .xcframework 包添加到 Xcode 目標的鏈接庫階段藐鹤,Xcode 在構建時使用所包含的框架或庫的正確平臺版本。使用?xcodebuild -create-xcframework從命令行創(chuàng)建框架赂韵。應該在?Build Libraries for Distribution構建設置為 YES 的情況下構建 XCFramework 中捆綁的框架或庫娱节。
Always Embed Swift Standard Libraries?始終嵌入swift標準庫。對于未使用swift代碼的情況可以設置為NO祭示。
Build Libraries for distrbution? ?xcode 構建用于分發(fā)的庫
Build Variants 可以設定生成產品的變種括堤。您可以創(chuàng)建額外的產品變種作為特殊用途。例如绍移,您可以使用編譯配置文件的名稱來創(chuàng)建一個高度定制的二進制文件悄窃。
Build Variants的值有三個:
normal-用于生成普通的二進制文件;
profile-用于可以生成配置信息的二進制文件蹂窖;
debug-用于生成帶有debug標志轧抗、額外斷言和診斷代碼的二進制文件。
Compiler For C/C++/Objective-C?選擇使用的編譯器瞬测。Xcode8.2默認使用APPLE LLVM 8.0版本的編譯器,