最近作項目過程遇到一個問題:網絡
涉及到這個屬性:Build Active Architecture Onlyiphone
Yes 、No的區別:測試
設置爲yes,是隻編譯當前的architecture版本,是爲了編譯速度更快,通常咱們在debug環境下這樣設置。ui
而設置爲no時,系統會編譯全部architecture下的版本。spa
這裏設備對應的architecture(摘自網絡):debug
就是說,編譯出的版本是向下兼容的,好比你設置此值爲yes,用iphone4編譯出來的是armv7版本的,iphone5也能夠運行,可是armv6的設備就不能運行。blog
(由於armv7s是在armv7後面,armv7能夠了,armv7s也就同時能夠了)ip
因此,有時候咱們會看到相似這樣一種錯:it
乍一看,是i386不支持的問題,但我這裏的緣由是這樣:(各位遇到此問題的可嘗試檢查一下這裏)編譯
我引用的第三方類庫裏面設置的Release下位Yes,而我本身的項目Release下是No,因此形成這樣的錯誤,兩種解決辦法:
一、將本身的項目Release下也設置成Yes。
二、修改引用類庫,將Release下改爲No便可。(這裏類庫是我本身寫的,因此修改比較方便)
推薦第二種方法。
建議:
通常debug的時候能夠選擇設置爲yes,release的時候要改成no,以適應不一樣設備。
PS:這裏若是release也設置成Yes,上線之後會不會有問題,本人還未測試,望有知道答案的留言下~~