CocoaPods安裝和使用并遇到的坑

寫(xiě)在前面

因換了一臺(tái)新電腦需重新安裝CocoaPods.
本人電腦系統(tǒng)版本為:macOS Big Sur 版本 11.2.3.
Xcode版本為:Version 12.4.

一. 先把ruby源搞定

安裝CocoaPods,需要ruby環(huán)境,然而Mac系統(tǒng)默認(rèn)會(huì)安裝好ruby環(huán)境.打開(kāi)Mac終端輸入:

gem sources -l //查看ruby源

默認(rèn)情況下:會(huì)顯示

https://rubygems.org/

ruby源在墻內(nèi)是訪問(wèn)不到的,需要置換為國(guó)內(nèi),原來(lái)一直用的是淘寶的,由于淘寶源不再更新,所以不在使用,現(xiàn)在用下面這個(gè)

//刪除原始的源
gem sources --remove  https://rubygems.org/
//添加新源(國(guó)內(nèi)Ruby鏡像)
gem source -a https://gems.ruby-china.com

只有在終端中出現(xiàn)下面文字才表明你上面的命令是成功的:

https://gems.ruby-china.com added to sources

為了驗(yàn)證你的Ruby鏡像是并且僅是gems.ruby-china,可以用以下命令查看:

gem sources -l        //檢測(cè)是否成功

只有在終端中出現(xiàn)下面文字才表明你上面的命令是成功的:

https://gems.ruby-china.com

二. 升級(jí)Gem

Gem是來(lái)管理Ruby標(biāo)準(zhǔn)包.

sudo gem update --system   //升級(jí)gem

目前查看gem版本為

gem -v           //查看版本
3.2.9

不升級(jí)在下面步驟可能會(huì)報(bào)很多錯(cuò)誤的,因?yàn)?code>Gem版本太低,無(wú)法安裝CocoaPods.

三. 安裝CocoaPods

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

查看版本:如果有版本號(hào),則說(shuō)明已經(jīng)安裝成功

   pod --version  //目前我的版本號(hào)為:1.10.1

成功后,輸入

pod setup   //這條命令是將Github上的開(kāi)源庫(kù)都托管都安裝Podspec索引安裝到到本地

檢測(cè)是否安裝成功:可以利用搜索AFNetworking來(lái)檢測(cè)是否能搜索到

檢測(cè)結(jié)果:

pod search AFNetworking
Creating search index for spec repo 'master'.. Done!

第一次會(huì)出現(xiàn)上面的 Creating search index for spec repo 'master'.. 等到 出現(xiàn) Done 后 就會(huì)出現(xiàn)我們搜索的結(jié)果,再次輸入命令就不會(huì)出現(xiàn)這行代碼了,直接就能搜索了

假如 pod search AFNetworking 竟然不好使了,報(bào)以下錯(cuò)誤

[!] CDN: trunk - Cannot perform full-text search because Algolia returned an error: 0: Cannot reach any host: execution expired, execution expired, execution expired, execution expired

可以用終端執(zhí)行命令 pod repo remove trunk 恢復(fù)正常,完美,可以搜索了.

到此就代表 CocoaPods 真正安裝成功!

四. 利用cocoapods來(lái)安裝第三方框架

  • 1.進(jìn)入要安裝框架的項(xiàng)目的.xcodeproj同級(jí)文件夾

  • 2.在該文件夾中新建一個(gè)文件Podfile, 執(zhí)行如下命令

    pod init 
    或者
    touch Podfile
    

    在文件中輸入自己需要的第三方項(xiàng)目庫(kù),我們以 AFNetworking 為例

    platform :ios, '9.0'
    target 'MyApp' do
      pod 'AFNetworking', '~> 4.0.1'
    end
    

    解釋:

    • platform : ios, '9.0'代表當(dāng)前AFNetworking支持的iOS最低版本是iOS 9.0,
    • MyApp就是你自己的工程名字,
    • pod 'AFNetworking', '~> 4.0.1'代表要下載的AFNetworking版本是4.0.1及以上版本,還可以去掉后面的'~> 4.0.1',直接寫(xiě)pod 'AFNetworking',這樣代表下載的AFNetworking是最新版.
  • 3.執(zhí)行pod,終端輸入 pod install

pod install
  • 4.導(dǎo)入第三方庫(kù)
    --no-repo-update : 不更新倉(cāng)庫(kù),迅速加載第三方框架

    pod install --no-repo-update
    pod update --no-repo-update
    
  • 5.CocoaPods中刪除不需要的第三方庫(kù)

    • 打開(kāi)Podfile, 找到不需要的類(lèi)庫(kù), 直接刪除該類(lèi)庫(kù)信息
      比如要?jiǎng)h除SDWebImage庫(kù) ,直接去Podfilepod 'SDWebImage',’~> 4.0.0'
    • 打開(kāi)終端cd到當(dāng)前項(xiàng)目的根目錄下重新執(zhí)行
    pod update --no-repo-update
    
    • 更新完成就刪除成功

五. 跳過(guò)pod setup快速安裝

在網(wǎng)絡(luò)不允許的情況下,執(zhí)行pod setup這一步, 感覺(jué)很慢.....
前面說(shuō)了,pod setup 這條命令是將Github上的開(kāi)源庫(kù)都托管都安裝Podspec索引安裝到到本地. 簡(jiǎn)單說(shuō)就是下載一個(gè)包,到本地,也就是這個(gè)東西

如果你同事電腦上有安裝好,你其實(shí)可以從你同事電腦上拷貝過(guò)來(lái),直接放到該路徑就OK了.
如果你身邊沒(méi)有裝好的CocoaPods的朋友,可以訪問(wèn)這個(gè)鏈接
https://github.com/CocoaPods/Specs (github所有的第三方開(kāi)源庫(kù)的Podspec文件都托管在這里,這也是你pod setup所要下載的).
選擇Download ZIP. 解壓后為這個(gè)樣子

對(duì)比上圖,Specs-master改名為master 放在 ~/.cocoapods/repos 路徑即可.

~/.cocoapods/repos 這個(gè)路徑是在執(zhí)行 pod setup生成的,所以電腦無(wú)法前往此路徑是,建議先pod setup下,然后關(guān)閉掉即可生成路徑.

寫(xiě)在后面

最后和諧學(xué)習(xí),不急不躁.我還是我,顏色不一樣的煙火.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,837評(píng)論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,196評(píng)論 3 414
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 175,688評(píng)論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 62,654評(píng)論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,456評(píng)論 6 406
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 54,955評(píng)論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,044評(píng)論 3 440
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,195評(píng)論 0 287
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,725評(píng)論 1 333
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,608評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,802評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,318評(píng)論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,048評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,422評(píng)論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,673評(píng)論 1 281
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,424評(píng)論 3 390
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,762評(píng)論 2 372

推薦閱讀更多精彩內(nèi)容