iOS進階實戰(zhàn)基礎篇(二)-自動打包總結(jié)

聲明:本篇文章整理來自個人印象筆記 僅供參考 如有問題歡迎指正

摘要

隨著公司訂單https升級的越來越多,上傳appstore的ipa包也打的越來越多,這樣就浪費了很長的時間在打上架包上,本文提供了一種比較智能的打包方式。

一、iOS程序包格式

iOS程序包分為appstore二進制文件跟渠道包兩種格式

appstore二進制文件:通過Xcode工具可以生成一個.app格式的二進制文件。

渠道包:格式為.ipa格式,在沒有自動化打包工具之前都是利用Xcode來生成相應的渠道包,而且每次只能生成一個渠道包,每次打包之前都得手動該渠道ID,帶來的問題就是耗費時間、效率低下、容易出錯、增加風險。

二、傳統(tǒng)的iOS打包方式

2.1 利用Xcode打包

appstore二進制程序包

打開你的項目,進入“Edit Project Settings”,進入Configuration頁面,選中Release點擊下面的Duplicate,復制一個新的配置項出來,命名為Distribution。然后進入Build頁面,頂上的Configuration下拉框選中Distribution,下面的Code Signing Identity里面的Any iPhone OS Device后面對應的值選中你的那個Distribution的證書。然后點擊“Build”–>“Build”就可以編譯程序了

編譯成功后,你就可以在相應的build目錄下看到一個.app的二進制文件。

2.2 渠道ipa包

根據(jù)以上步驟同樣配置好Distribution證書,然后點擊“Build”–> “Build and Archive”就可以編譯程序了。接著打開“Window”->”O(jiān)rganizer”左邊欄中選擇”ARCHIVED APPLICATIONS”然后再右側(cè)列表中選中剛才編譯的程序包再點擊右側(cè)右邊頂部的”Share”按鈕保存到磁盤即可。就會生成一個.ipa的文件即為渠道包。

注意:以上運行設備必須選擇“Deveice”

三、 利用Xcode提供了shell編譯工具xcodebuild和ipa打包工具xcrun打包

3.1:配置好Xcode中的打包的相關(guān)證書

3.2:終端命令:cd+你的項目目錄

例如:cd/Users/tsou/Desktop/DemoTest

3.3 終端運行下面的命令DemoTest給為你的項目名稱

$? xcodebuild -project DemoTest.xcodeproj-target DemoTest -configuration Release

這段終端命令執(zhí)行后會在你的項目中生成一個build目錄,終端也會有SUCCESS提醒。

??3.4? DemoTest替換為你的項目名稱? ? ~/Desktop/gjpgsc.ipa你的項目ipa存放路徑

$? xcrun -sdk iphoneos -v PackageApplication./build/Release-iphoneos/ DemoTest.app -o ~/Desktop/ DemoTest.ipa

打包成功后會在你的桌面上生成一個ipa包,這種打包方式有一定的局限性,只能針對沒有Cocopod管理的項目進行打包。

四、有Cocopod管理打包方式

4.1 配置好Xcode中的打包的相關(guān)證書

4.2 終端命令:cd +你的項目目錄

4.3 終端運行下面的命令LSDevModel3給為你的項目名稱

$ xcodebuild -workspace??/Users/tsou/Desktop/xx/xx項目/xx/LSDevModel3/LSDevModel3.xcworkspace -scheme LSDevModel3

運行成功的結(jié)果如:示例_01

示例_01

其中的紅色框中的是你的.app存放路徑

4.4 終端導出ipa包

$ xcrun -sdk iphoneosPackageApplication -v? /Users/tsou/Library/Developer/Xcode/DerivedData/LSDevModel3-atkhbbokvohqghcgzgijmbigafev/Build/Products/Release-iphoneos/LSDevModel3.app

紅色為你的.app的絕對路徑。運行成功后的結(jié)果如:示例_02

示例_02

紅框內(nèi)即為需要的ipa包。

五、 利用第三方快速打包 shenzhen

終端

? $ gem install shenzhen

? $ cd 到你的項目中

? $ ?ipa build?

??這樣直接就生成ipa包,原理其實是自動調(diào)用了4中的兩個終端命令,代碼運行后的效果如:示例_03

示例_03

紅框內(nèi)即為你ipa存放目錄

其中ipa終端還有自動部署的功能,你可以終端

$ ipa help

示例_04
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容