iOS自動化打包

2021-10-04 13:52:44 字數 3588 閱讀 1479

第一步 如果要發布到fir,需要安裝 終端執行gem install fir-cli

第二步

如果沒有安裝過rvm,需要安裝rvm,在終端輸入rvm -v命令檢視,如果列印出rvm:command not found說明沒有安裝過rvm,如果能列印出rvm版本等資訊說明安裝過。如果沒有安裝過rvm可以通過下面的命安裝,如果已經安裝過可以忽略。

在終端輸入 curl -l get.rvm.io | bash -s stable ,然後稍等一會rvm就安裝好了

在終端輸入 source ~/.bashrc

在終端輸入 source ~/.bash_profile

再輸入rvm -v檢視安裝成功

第三步 配置證書,開啟自動化之路

下面是上傳到蘋果商店的完整指令碼

#!/bin/bash

project_path=$(pwd)

#取當前時間字串新增到檔案結尾

now=$(date +%y-%m-%d-%h\:%m\:%s)

#取當前日期

today=$(date +%y-%m-%d)

# 指定專案的scheme名稱

scheme="專案的scheme名稱"

# 指定專案名

project_name="專案名"

# 指定要打包的配置名

configuration="release"

# plist檔案所在目錄

# 指定專案位址

workspace_path="$/$.xcworkspace"

# 指定輸出路徑

output_path="$home/library/developer/xcode/archives"

# 指定輸出歸檔檔案夾位址

archivefinder_path="$/$"

# 指定輸出歸檔檔案位址

archive_path="$/$$.xcarchive"

# 指定ipa輸出位址

ipa_path="~/desktop/firestonelamp-ipa/$$"

# altool工具路徑

#輸出設定的變數值

echo "===workspace path : $==="

echo "===archive path : $==="

echo "===ipa path : $==="

echo "===profile : $==="

#先clean一下

echo "===開始 clean 工程==="

xcodebuild clean \

-workspace $ \

-scheme $ \

-configuration $ \

-quiet || exit

echo "===clean 完成==="

#根據指定的專案, scheme, configuration, 輸出路徑, 打出archive包

echo "===開始打包==="

if [ ! -d "$" ]; then

mkdir $

fixcodebuild archive \

-workspace $ \

-scheme $ \

-configuration $ \

-archivepath $ \

-quiet

echo "===打包完成==="

#匯出ipa包

echo "===正在匯出ipa==="

xcodebuild \

-allowprovisioningupdates \

-exportarchive \

-archivepath $ \

-configuration $ \

-exportpath $ \

-exportoptionsplist $ \

-quiet

echo "===.ipa 檔案已匯出==="

# open $

-t ios --output-format xml

-t ios --output-format xml

echo "===上傳完成==="

exit

指令碼解釋 

下面的意思 清理構建目錄

echo "===開始 clean 工程==="

xcodebuild clean \

-workspace $ \

-scheme $ \

-configuration $ \

-quiet || exit

echo "===clean 完成==="

編譯之前先clean下,就如同在xcode進行product -> clean。

編譯打包成archive

xcodebuild archive \

-workspace $ \

-scheme $ \

-configuration $ \

-archivepath $ \

-quiet

編譯工程,編譯並生成.xcarchive檔案,放在build_path下,名字是project_name.xcarchive,就如在xcode進行product -> archive這一步最為耗時.

將archive匯出ipa

xcodebuild \

-allowprovisioningupdates \

-exportarchive \

-archivepath $ \

-configuration $ \

-exportpath $ \

-exportoptionsplist $ \

-quiet

將生成的.xcarchive檔案匯出.ipa包到指定的exportipapath路徑下。

用\來進行換行分隔,一條shell命令過長時可以進行分割顯示.

$變數名是引用變數,拿來使用

|| exit 指明如果這一條命令執行失敗,則退出當前shell.

通過fir-cli命令上傳到fir平台

# 將***替換成自己的fir平台的token

fir login -t ***

fir publish $exportipapath/$scheme_name.ipa

現在是transport

# altool工具路徑
-t ios --output-format xml

-t ios --output-format xml

echo "===上傳完成==="

iOS自動化打包

ios專案自動打包指令碼 1.指令碼自動打包 2.上傳到fir.im 3.傳送郵件給測試人員 需要安裝的相關指令軟體 1.python 2.7 2.xcode 3.fir.im指令 使用方法 1.安裝xcode 2.安裝fir.im的指令,安裝方法見 3.配置相關資訊 python ipa.py c...

IOS 自動化打包介紹

摘要 tag自動化打包背景介紹 隨著ios程式發布的渠道逐漸的增多,為每個渠道打包也成為特別耗費時間和體力的一項技術活了,而這一般大多數都是由rd來完成的。這樣就占用了rd很多的開發時間,何不把這些東西寫成乙個自動化的指令碼,然後交給qa 或是 pm來完成這個打包過程了。經過一番調研發現網上這種指令...

iOS 專案自動化打包實踐

1.1 安裝fir.cli 具體安裝步驟見github.1.2 xcode 證書配置xcode 根據不同的模式配置不同的證書,預設有release,debug,可自行新增,新增方法見圖。adhoc 就是新新增的用於測試分發 的打包方式。配置adhoc證書 debug 除錯模式,配置除錯證書 rele...