衆所周知,咱們進行iOS開發,在Xcode調試程序時,分爲兩種方式,Debug和Release,在Target的Setting中相信你們應該看到不少選項都分爲Debug和Release,方便咱們分別設置,知足調試和發佈的不一樣需求。html
Release是發行版本,比Debug版本有一些優化,文件比Debug文件小 Debug是調試版本,Debug和Release調用兩個不一樣的底層庫。通俗點講,咱們開發者本身內部真機或模擬器調試時,使用Debug模式就好,等到想要發佈時,也就是說須要大衆客戶使用時,須要build Release版本,具體區別以下:app
1、Debug是調試版本,包括的程序信息更多
2、只有Debug版的程序才能設置斷點、單步執行、使用TRACE/ASSERT等調試輸出語句
3、Release不包含任何調試信息,因此體積小、運行速度快工具
那麼,問題來了,咱們調試程序時,該如何生成(Build)或運行Debug或是Release版本呢?性能
Xcode左上角,點中項目名稱-Edit Scheme,或是菜單欄-Product-Scheme-Edit Scheme 彈出界面以下:優化
當你這裏設置Debug時,你build/Run後就是debug版本,相應的,修改爲Release模式,出來的就是release版本,這裏能夠很方便切換。ui
剛開發時,始終不知道這個的做用,只知道要打包生成APP時,須要用這個,那麼到底Analyze和Release有什麼關係呢?spa
archive是你要上傳包的時候,打包。也就是說Archive只跟APP要上傳到appStore的時候有關,通常狀況下,只有在那個時候纔會用Archive,能夠這麼理解。因此Archive也分爲Debug和Release兩個,你能夠Archive出一個Debug版本的應用也能夠Archive出一個Release的應用。debug
因此說,Archive和Release沒有太大的關係,Archive咱們平時通常都不會用到的。調試
點擊運行Profile,profile 以後,會有一個工具選項. 而後你能夠查看app 性能code
analyze,是查找靜態內存泄漏,之前mrc 的時候會用。Profile和Analyze均可以在Scheme中設置:
【後續補充】
總結:
默認run,是debug模式,就是真機聯調.
若是你修改成release,是run 的時候, 爲發佈模式.
直接archive 是系統提供幫助打包的,Archive生成後的文件會小不少~
下面給出一個傳送門,我最近在作的靜態庫開發,裏面說的還算詳細。
http://blog.sina.com.cn/s/blog_7b9d64af0101jlym.html iOS生成靜態庫方法-iOS集成靜態庫-iOS合併靜態庫