iOS程式編譯打包的兩種方式

來源:互聯網
上載者:User

標籤:

這個選項其實是用來設定我們要如何打包我們的代碼.

Architectures: 項目要編譯的目標裝置列表, 設定以哪種方式打包我們的代碼

第一種方式: 包含兩種架構的程式碼封裝(32bit, 64bit), 但是這種打包方式只能運行在iOS6以上的系統, 也就是說這種打包方式, 對手機沒有要求, 只是對系統有要求.

第二種方式: 只包含一種架構的代碼(32bit), 這種打包方式, 對於手機和系統都沒什麼要求, 但是這樣會降低64位系統的手機效能

如果要相容iOS5以及更低的系統, 只能打32位的包, 如果是包含兩種架構的包, 則系統會根據系統位元來運行對應位元的程式碼封裝.

問題: 

1. 為什麼能運行兩種架構的代碼?

因為64位的系統有兩套FrameWork, 一套是32位的, 一套是64位的, 系統根據是哪種架構的代碼, 來調用對應位元的FrameWork作為底層支撐

2. 為什麼說64位的系統運行32位的代碼會降低手機的效能?

因為在64位系統同時運行兩種架構的代碼時, 系統會將兩套FrameWork載入記憶體中, 所以消耗的記憶體比較多, 從而降低手機的效能.

Valid Architectures: 項目可能支援的裝置列表, 該列表和Architectures列表的交集, 將是Xcode要最終產生的二進位代碼所支援的裝置列表

Build Active Architectures Only: 設定是否只編譯當前使用的裝置對應的程式碼封裝.

 

程式的兩種運行模式:

Debug模式: 面向自己的

Release模式: 面向客戶的

我們可以通過這兩種模式來實現對代碼的精簡, 我們可以在Debug模式下, 輸出一些我們開發當中要用到的日誌資訊, 然後在Release模式下, 發布程式就可以了, 這樣在發布的程式當中就不會再有大量的輸出的日誌資訊了.

iOS程式編譯打包的兩種方式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.