IOS自動化打包平臺

前提:IOS打包平臺需要有一個IOS系統的電腦,Mac、一體機都可以。
咱們的打包平臺,用的工具有Jenkins、Fastlane、GitLab、蒲公英。
一、工具說明:
先介紹着四個工具的作用:
1、GitLab主要用於存放開發代碼,可以通過WebHooks功能和Jenkins配合實現代碼提交後自動觸發Jenkins的Job。
2、Fastlane主要用於打包IOS包的,當然你可以選擇用xcodebuild命令來打包,但是相對麻煩。
3、Jenkins主要是用來做持續集成的,咱們的Jenkins是安裝在Linux上的,但是我們需要一個IOS系統的機器作爲子節點用來打包IOS的App。
4、下面是關於蒲公英的介紹:
蒲公英是一個提供專業的手機應用內測服務,您只需將需要內測的應用上傳至蒲公英,生成二維碼,內測用戶通過在手機上掃描二維碼,即可將內測應用安裝至手機等設備中進行測試提供專業的手機應用內測服務,您只需將需要內測的應用上傳至蒲公英,生成二維碼,內測用戶通過在手機上掃描二維碼,即可將內測應用安裝至手機等設備中進行測試。

二、準備代碼
1、我們通過git來clone開發代碼,IOS代碼的地址爲:[email protected]:ios_dev/ABKUser.git
我們的命令爲:git clone [email protected]:ios_dev/ABKUser.git
克隆成功後,如下圖所示:

在這裏插入圖片描述

2、進入剛纔clone的文件夾中: cd ABKUser
3、切換git分支到dev分支:git checkout dev
4、執行當前文件夾的pull腳本,該腳本會重新同步代碼並把該工程依賴的其他工程也會拉取下來:./pull ,執行成功後如下圖:

在這裏插入圖片描述
命令執行過程中可能會打開xcode。
至此,我們的代碼準備完畢。
三、Fastlane的安裝以及使用
1、首先確保安裝課最新版本的Xcode命令行工具。
xcode-select --install
如下圖所示證明安裝成功:

在這裏插入圖片描述
2、安裝Fastlane,在這裏我們選擇通過Homebrew方式安裝。請注意安裝Fastlane需要翻牆。
brew cask install fastlane
3、安裝成功後在你的代碼的根目錄下執行如下命令:
fastlane init
4、在執行過程中需要我們輸入一些信息,如圖處,我們輸入2 繼續即可。
在這裏插入圖片描述

1、2、3、4含義如下:
1:屏幕截屏。
2:打包TestFlight版本。
3:打包AppStore版本。
4:手動設置打包配置。

5、此處需要輸入我們的Apple ID,然後點擊回車繼續。

 [email protected]

6、後面還有一個地方需要輸入Apple ID的密碼,我這裏已經輸入過了所以不提示了。
7、如下圖直接點擊回車繼續:

在這裏插入圖片描述
8、如下圖圖示我們沒有問題:
在這裏插入圖片描述

9、init執行完成後,我們可以看到在項目的根目錄下回生成一個fastlane的文件夾,如圖:
在這裏插入圖片描述
10、進入fastlane文件夾中查看,會有幾個文件,如圖:
在這裏插入圖片描述
11、其中Fastfile這個文件是我們打包的主要配置文件,我們需要修改一下,如圖:
在這裏插入圖片描述
然後在build_app的前面加上如下兩行:

get_certificates
get_provisioning_profile(adhoc:true)

修改後,如圖:
在這裏插入圖片描述
12、然後我們回到項目根目錄下,執行 fastlane beta 命令,如圖:
在這裏插入圖片描述
13、出現如下界面,證明成功,如圖:
在這裏插入圖片描述
14、這時我們進入項目的根目錄下,查看會發現多了一個.ipa文件,如圖:
在這裏插入圖片描述
至此說明我們的fastlane 已經沒有問題並且可以使用了。

三、打好的包上傳至蒲公英,
1、首先先註冊蒲公英,蒲公英官網:https://www.pgyer.com/ ,大家需要自行註冊,大家可以根據實際情況選擇註冊個人或者企業,註冊完成後需要大家進行認證,只有認證通過纔可以上傳app,在這裏就不再說了。
2、認證完成後大家可以查看自己的api_key和user_key,在賬戶設置中點擊API信息,如圖:
在這裏插入圖片描述
3、回到mac中項目根目錄下,安裝蒲公英的 Fastlane 插件。運行如下命令:
sudo bundle exec fastlane add_plugin pgyer
如圖:
在這裏插入圖片描述
4、出現如下情況,點擊y,然後繼續:
在這裏插入圖片描述
5、安裝過程中可以需要輸入用戶密碼,安裝成功後如圖:
在這裏插入圖片描述
6、回到我們的項目根目錄中,找到我們的Fastfile文件,繼續修改我們的Fastfile文件,讓我們打好的包上傳至蒲公英上。在build_app的後面添加如下代碼:
pgyer(api_key: “蒲公英上你的api_key”, user_key: “蒲公英上你自己的user_key”)
修改後,如圖:
在這裏插入圖片描述
7、修稿完成後運行 fastlane beat ,成功後如圖:
在這裏插入圖片描述
8、登錄蒲公英查看我們是否上傳成功,在我的應用中找到我們上傳的應用,證明長傳成功,如圖:
在這裏插入圖片描述
9、只有添加了內測設備的手機纔可以下載我們的app,因此我們需要添加內測設備,纔可以下載,如何添加內測設備,請參考蒲公英文檔:https://www.pgyer.com/doc/view/add_udid_to_app
10、添加好內測設備後,我們需要重新執行 fastlane beta 命令,重新發布到蒲公英,發佈成功後我們可以在應用界面看到內測設備,我們點擊打開,我們可以在UUIDS中找到我們的UUID,那我們就可以用這個手機掃描下載二維碼進行下載了,如圖:
在這裏插入圖片描述
11、注意:大家可以看到我們上傳的應用是內測版,也直郵內測版本纔可以讓我們下載,如果大家上傳的是app-store版則不能下載。

至此,我們的應用已經可以上傳至蒲公英上並可以讓我們下載了,我們接下來進行最後一步和jenkins的集成。

四、和jenkins的集成。

1、jenkins的安裝以及配置,我們這裏就不說了,網上很多資料,大家可以自己去查找。
2、然後我們需要在jenkins上把我們這mac設置成Jenkins的子節點,大家請自行完成。
3、我們在jenkins 上新建一個自由風格的job。
4、然後進入配置頁面,找到限制項目的運行節點,選擇我們剛纔配置的子節點,如圖:
在這裏插入圖片描述
5、構建處選擇執行shell,寫入如下腳本,如圖:
cd /Users/XXXXXX/git_project/XXXXXX
git checkout dev
git checkout .
./pull
fastlane beta
在這裏插入圖片描述
6、保存配置後,點擊立即構建按鈕,打包成功後如圖:
在這裏插入圖片描述
常見問題:
1、fastlane beta 在執行過程中,如果出現簽名問題,請查看xcode軟件中是否綁定了apple id 賬號,如果沒有綁定請登錄自己的賬號。
2、在使用fastlane打包上傳到蒲公英時,可能會出現找不到pyger插件的情況。
解決:查看輸入的日誌,發現在加載插件的時候加載失敗,查看Gemfile文件,查看文件內容,是否如下:
在這裏插入圖片描述
若不一樣,請修改後,再次嘗試運行,fastlane beta ,提示插件加載成功,並能發佈到蒲公英上去。
3、ios,如何打debug包,需要在Fastfile中進行配置,build_app中加入 configuration: “Debug” ,如圖所示:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章