xcode5時代如何設置Architectures和Valid Architecturesios
目前ios的指令集有如下幾種:xcode
1,armv6,支持的機器iPhone,iPhone2,iPhone3G及對應的iTouchapp
2,armv7,支持的機器iPhone4,iPhone4Siphone
3,armv7s,支持的機器iPhone5,iPhone5Cui
4,arm64,支持的機器:iPhone5Scode
機器對指令集的支持是向下兼容的,所以armv7的指令集是能夠運行在iphone5S的,只是效率沒那麼高而已~ip
========================it
Architecture : 指你想支持的指令集。io
Valid architectures : 指即將編譯的指令集。編譯
Build Active Architecture Only : 只是否只編譯當前適用的指令集。
========
如今是2014年初,其實4和4S的用戶仍是蠻多的,而iphone3之類的機器幾乎沒有了,因此咱們的指令集最低必須基於armv7.
所以,Architecture的值選擇:armv7 armv7s arm64(選arm64時須要最低支持5.1.1,這塊不太明白)
1,若是想本身的app在各個機器都可以最高效率的運行,則須要將Build Active Architecture Only改成NO,Valid architectures選擇對應的指令集:armv7 armv7s arm64。這個會爲各個指令集編譯對應的代碼,所以最後的 ipa體積基本翻了3倍。(若是不在意app大小的話,應該這樣作)
2,若是想讓app體積保持最小,則現階段應該選擇Valid architectures爲armv7,這樣Build Active Architecture Only選YES或NO就無所謂了。