天天看點

跨平台應用開發進階(二十七) iOS原生開發環境搭建步驟詳解

作者:Web全棧開發攻城獅

一、前言

ios觀播SDK內建時,首先需要環境配置。配置步驟為:

Xcode -> homebrew -> RVM -> Ruby -> CocoaPods;

前期已經完成Xcode 與 homebrew。

二、環境搭建

對于新入門的開發者,如何安裝 Ruby和Ruby Gems 的運作環境可能會是個問題,本頁主要介紹如何快速安裝 Ruby 開發環境。

2.1 安裝Ruby

步驟1 安裝 RVM

$ curl -L https://get.rvm.io | bash -s stable           

然後,載入 RVM 環境(新開 Termal 的話就不用這麼做了,會自動重新載入的)

$ source ~/.rvm/scripts/rvm           

檢查一下是否安裝正确

$ rvm -v
rvm 1.22.17 (stable) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]           

步驟2 用 RVM 安裝 Ruby 環境

列出已知的ruby版本

$ rvm list known           

可以選擇現有的rvm版本來進行安裝(下面以rvm 2.7.2版本的安裝為例)

$ rvm install 2.7.2           

同樣繼續等待漫長的下載下傳,編譯過程,完成以後,Ruby, Ruby Gems 就安裝好了。

查詢已經安裝的ruby

$ rvm list           

解除安裝一個已安裝版本

$ rvm remove 1.9.2           

步驟3 設定 Ruby 版本

RVM 裝好以後,需要執行下面的指令将指定版本的 Ruby 設定為系統預設版本。

$ rvm 2.7.2 --default           

同樣,也可以用其他版本号,前提是你有用 rvm install 安裝過那個版本。

這個時候你可以測試是否正确

$ ruby -v
ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-darwin22]

$ gem -v
3.1.4           
這有可能是因為Ruby的預設源使用的是cocoapods.org,國内通路這個網址有時候會有問題,網上的一種解決方案是将遠替換成可用的,替換方式如下:
           
$gem source -r https://rubygems.org/
$gem source -a https://gems.ruby-china.com/
           

要想驗證是否替換成功了,可以執行:

$ gem sources -l             

正常的輸出結果:

CURRENT SOURCES            

https://gems.ruby-china.com/             

到這裡就已經把Ruby環境成功的安裝到了Mac OS X上,接下來就可以進行相應的開發使用了。

2.2 安裝CocoaPods

CocoaPods是什麼?

當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,是以要使用它,必須得另外下載下傳其他類庫,而其他類庫又用到其他類庫,“子子孫孫無窮盡也”,這也許是比較特殊的情況。總之小編的意思就是,手動一個個去下載下傳所需類庫十分麻煩。另外一種常見情況是,你項目中用到的類庫有更新,你必須得重新下載下傳新版本,重新加入到項目中,十分麻煩。如果能有什麼工具能解決這些惱人的問題,那将“善莫大焉”。是以,你需要 CocoaPods。

CocoaPods應該是iOS最常用最有名的類庫管理工具了,上述兩個煩人的問題,通過cocoaPods,隻需要一行指令就可以完全解決,當然前提是你必須正确設定它。重要的是,絕大部分有名的開源類庫,都支援CocoaPods。是以,作為iOS程式員的我們,掌握CocoaPods的使用是必不可少的基本技能了。

使用以下指令安裝cocoapods。

$sudo gem install -n /usr/local/bin cocoapods           

然後執行

$pod setup           

經過以上操作步驟,便完成了 Ruby 及 CocoaPods 的安裝。

2.3 使用中遇到的問題

Cocoapods更新不到最新的第三方庫

情況一:

打開終端,檢視一下cocoapods的版本号:pod --version

如果不是最新版本,更新一下cocoapods版本:sudo gem install -n /usr/local/bin cocoapods --pre

但是有時候cocoapods升到最新版本後我cd到工程檔案下pod install,發現還是沒有更新最新的庫。這時候需要更新本地Pod的索引檔案:pod setup或pod repo update

此時在pod install或pod update,A庫應該就是最新的了。

           

情況二:

可能是别的庫鎖定了這個庫的版本,也就是第三方庫裡用了第三方庫并把它的版本給鎖定了。

更新索引庫或者指定第三方

$pod update 第三方名字 
例如:
$pod update AFNetworking  

           

GIT送出時忽略Pods檔案

如果Pods已經送出過或緩存過請執行以下步驟(沒有就忽略此步)驟:

cd 到項目目錄

$git rm -r  --cached .

$git add .

$git commit -m "忽略Pods"

           

在GitHub上建立項目時選擇對應的語言會生成.gitignore檔案,預設是隐藏的,打開此檔案找到。Pods/ 預設是注釋掉的, 去掉前面的#即可, 這樣在pod架構下得檔案就不會再納入管理. 在其他開發人員使用時, 克隆代碼後隻需要做一下 pod install即可.(注意:pod update 是不可以的)

在此使用pod install而不是pod update原因如下:

pod install執行時如果有Podfile.lock檔案,則三方庫會根據lock檔案記錄的版本更新為最新版本

pod update 不管是否有Podfile.lock檔案,都會将在(Podfile中引入時未寫版本的第三方庫)更新為網絡上最新的版本,會造成庫找不到的問題。

繼續閱讀