ReactiveCocoa添加cocoapods 配置圖文教程及坑總結(jié)

本文即謝了如何配置,配置過(guò)程中遇到的坑也總結(jié)了,目前發(fā)現(xiàn)如何配置RAC這方面的文章太少了,其實(shí)坑還是有一點(diǎn)的,這些坑都需要google 才能解決


正題

使用CocoaPods在使用之前,確保你需要的庫(kù)在Specs repository或者cocoapods.org上可以查詢到。在新的項(xiàng)目中使用CocoaPods
創(chuàng)建一個(gè)新的Xcode項(xiàng)目。步驟如下:

一) 為項(xiàng)目添加cocoapod,已經(jīng)添加過(guò)cocoapod 忽略此步

    1. 打開(kāi)終端,執(zhí)行
      $ cd your project direction
      ,進(jìn)入到你的項(xiàng)目目錄下,前提是新建一個(gè)項(xiàng)目哦。
    1. $ touch Podfile 創(chuàng)建一個(gè)Podfile文件。打開(kāi)Podfile,推薦使用終端打開(kāi),cd 到Podfile 文件下在第一行寫下platform :ios, '8.0'指定平臺(tái)以及所支持的版本。
    1. 在單獨(dú)一行用 pod 'libraryName',指定需要導(dǎo)入的依賴。

如何使用ReactiveCocoa
ReactiveCocoa可以在iOS和OS X的應(yīng)用開(kāi)發(fā)中使用,對(duì)于iOS開(kāi)發(fā)者,可以將RAC源碼下載編譯后,使用編譯好的libReactiveCocoa-iOS.a
文件。
開(kāi)發(fā)者也可以用CocoaPods來(lái)設(shè)置目標(biāo)工程對(duì)ReactiveCocoa的依賴,只需要編輯Podfile文件,增加如下內(nèi)容即可:
pod 'ReactiveCocoa', ‘4.0' 目前的最新的
或者
pod 'ReactiveCocoa

    1. CocoaPods提供$ pod init
      ,可以為我們創(chuàng)建具有模板的Podfile文件。在$ pod install
      執(zhí)行完成之后,會(huì)生成一個(gè)projectName.xcworkspace文件,之后使用這個(gè)文件來(lái)打開(kāi)項(xiàng)目。
    1. 在終端中執(zhí)行$ pod install,就會(huì)為項(xiàng)目導(dǎo)入執(zhí)行的依賴。

**可能問(wèn)題 Setting up CocoaPods master repo 一直不動(dòng)
終端中輸入 cd ~/.cocoapods 再輸入 du -sh * 查看下載了多少 **


卡主cocoa.gif

一直不動(dòng),解決方案見(jiàn)我的文章: CocoaPods update 慢的較好的解決方案

cocoapod 安裝好后,執(zhí)行如下命令 打開(kāi)podfile 文件并編輯

//3.0.0需要最底8.0的ioS部署系統(tǒng) 否則會(huì)報(bào)錯(cuò)提示的
platform :ios, ‘8.0‘
//use_frameworks!   一定要加的,感嘆號(hào)也不能少
use_frameworks! 
target “demo” do
pod 'ReactiveCocoa', ‘3.0’

end

//上面的那個(gè)會(huì)報(bào)錯(cuò) 解決方案在這頭文件找不到的報(bào)錯(cuò)解決方案


platform :ios, ‘8.0‘
use_frameworks! 
target ‘demo’ do
pod 'ReactiveCocoa’, :podspec => 'https://gist.githubusercontent.com/PaulTaykalo/04f8e2ee25b9d57f03455ccafd541b34/raw/e94f3bec7a9450ecd0f0cdc9b4899deb0b91d758/ReactiveCocoa.podspec.json'

end
wanggangdeMacBook-Pro:demo wanggang$ open -e /Users/wanggang/Documents/demo/Podfile 
wanggangdeMacBook-Pro:demo wanggang$ pod install

最后安裝成功了

wanggangdeMacBook-Pro:demo wanggang$ pod install
Analyzing dependencies
Downloading dependencies
Installing Box (1.2.2)
Installing ReactiveCocoa (3.0.0)
Installing Result (0.4.4)
Generating Pods project
Integrating client project
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 3 total
pods installed.

[!] Your Podfile has had smart quotes sanitised. To avoid issues in the future, you should not use TextEdit for editing it. If you are not using TextEdit, you should turn off smart quotes in your editor of choice.
wanggangdeMacBook-Pro:demo wanggang$ 

二) pod install 成功后build project 坑總結(jié)

安裝成功了打開(kāi)工程的.xcworkspace,并不會(huì)一番就可以順利編譯通過(guò)

Snip20160710_13.png

2.1) 會(huì)出現(xiàn)如下錯(cuò)誤:

缺少證書的錯(cuò)誤

上面的錯(cuò)誤 在pod的target中選一個(gè)證書就可以了,pods-demo,ReactiveCocoa,Result 三個(gè)紅色箭頭指的地方都要選擇


缺少制定的證書選擇證書的步驟

2.2)下面的錯(cuò)誤 需要信任證書

,這是xcode8 的新特性,以前只有企業(yè)賬號(hào)才需要信任證書,現(xiàn)在開(kāi)發(fā)賬號(hào)也需要了,去設(shè)置->通用->描述文件, 點(diǎn)擊信任證書,就可搞定


Snip20160710_10.png

2.3) 報(bào)錯(cuò)的EXTKeypathCoding.h等幾個(gè).h 文件 找不到

,有同學(xué)說(shuō)pod 'ReactiveCocoa’ 修改為pod 'ReactiveCocoa’,:podspec => 'https://gist.githubusercontent.com/PaulTaykalo/04f8e2ee25b9d57f03455ccafd541b34/raw/e94f3bec7a9450ecd0f0cdc9b4899deb0b91d758/ReactiveCocoa.podspec.json',就可以解決.h文件會(huì)報(bào)錯(cuò)的問(wèn)題,發(fā)現(xiàn)不好用,我的方法是加上RAC 的前綴就可以,好幾個(gè)文件,都需要加RAC 的前綴,只要說(shuō)找不到文件,就加RAC 前綴,就可以通過(guò),當(dāng)然也有其他的辦法,發(fā)現(xiàn)不是完全解決.

報(bào)錯(cuò)的文件

加了前綴后的文件如下所示:


加上RAC 前綴的后解決

2.4) 會(huì)有報(bào)錯(cuò)swift 文件錯(cuò)誤,主要是語(yǔ)法錯(cuò)誤

如果項(xiàng)目中沒(méi)有用到swift ,直接可以刪除掉ReactiveCocoa 庫(kù)中的所有swift 文件,即可變異通過(guò).至此所有的問(wèn)題都解決了,就可以愉快的玩啥RAC了.

去google 搜索相關(guān)的報(bào)錯(cuò),很多老外都說(shuō)集成RAC 會(huì)有a lot of trouble 的,trouble 我都解決了 ,分享出來(lái),有問(wèn)題歡迎留言.

2.5) 附上demo的podfile 文件 ,這個(gè)可能會(huì)用的上

使用RAC 2.0版本的podfile 文件,RAC 2.0 版本庫(kù)里面就不會(huì)有swift 了

platform :ios, ‘8.0‘
use_frameworks! 
target ‘demo’ do
pod 'ReactiveCocoa’,2.0
end

使用RAC 4.0版本的podfile 文件,RAC 4.0 版本庫(kù)里面有swift 了文件,支持swift3 ,但是swift會(huì)報(bào)錯(cuò),我用xcode8 和xcode7.2 試的

platform :ios, ‘8.0‘
use_frameworks! 
target ‘RACDEMO4’ do
pod 'ReactiveCocoa’,:podspec => 'https://gist.githubusercontent.com/PaulTaykalo/04f8e2ee25b9d57f03455ccafd541b34/raw/e94f3bec7a9450ecd0f0cdc9b4899deb0b91d758/ReactiveCocoa.podspec.json'
end

上面的兩個(gè)podfile 文件兩個(gè)選擇一個(gè)就行了,兼容swift選擇后者,不兼容swift 選擇前者即可

0710補(bǔ)充在公司電腦安裝過(guò)程:

1)touch Podfile ,
2$ open -e /Users/hlh/Downloads/SVNCode0125/0928shangchuanAPPstore-SVN/Podfile ,

platform :ios, ‘7.0‘
use_frameworks! 
target ‘ZhuRenWong’ do
pod 'ReactiveCocoa’,2.0
end

3)$ pod init

  1. $ pod install
  2. 警告[!] The `Paopao [Release]` target overrides the `PODS_ROOT` build setting defined in `Pods/Target Support Files/Pods/Pods.release.xcconfig'. This can lead to problems with the CocoaPods installation- Use the `$(inherited)` flag, or- Remove the build settings from the target.文/Nidalee丶
    如下方法慎用,
項(xiàng)目其他地方需要-objc-(比如環(huán)信)會(huì)出現(xiàn)崩潰,解決方法,把刪除的objc加上

ps:第一次為項(xiàng)目集成cocoa pod 和RAC項(xiàng)目所有的文件都需要提交, 另外第二次提交 workspace 盡量少提交避免沖突

______
- 作者開(kāi)發(fā)經(jīng)驗(yàn)總結(jié)的文章推薦,持續(xù)更新學(xué)習(xí)心得筆記
[Runtime 10種用法(沒(méi)有比這更全的了)](http://www.itdecent.cn/p/3182646001d1)
[成為iOS頂尖高手,你必須來(lái)這里(這里有最好的開(kāi)源項(xiàng)目和文章)](http://www.itdecent.cn/p/8dda0caf47ea)
[iOS逆向Reveal查看任意app 的界面](http://www.itdecent.cn/p/060745d5ecc2)
[JSPatch (實(shí)時(shí)修復(fù)App Store bug)學(xué)習(xí)(一)](http://www.itdecent.cn/p/344db07a2374)
[iOS 高級(jí)工程師是怎么進(jìn)階的(補(bǔ)充版20+點(diǎn))](http://www.itdecent.cn/p/1f2907512046)
[擴(kuò)大按鈕(UIButton)點(diǎn)擊范圍(隨意方向擴(kuò)展哦)](http://www.itdecent.cn/p/ce2d3191224f)
[最簡(jiǎn)單的免證書真機(jī)調(diào)試(原創(chuàng))](http://www.itdecent.cn/p/c724e6282819)
[通過(guò)分析微信app,學(xué)學(xué)如何使用@2x,@3x圖片](http://www.itdecent.cn/p/99f1f924ae45)
[TableView之MVVM與MVC之對(duì)比](http://www.itdecent.cn/p/d690b5d97201)
[使用MVVM減少控制器代碼實(shí)戰(zhàn)(減少56%)](http://www.itdecent.cn/p/f85363c82ea1)
[ReactiveCocoa添加cocoapods 配置圖文教程及坑總結(jié)](http://www.itdecent.cn/p/66f0c7e1ced8)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • 項(xiàng)目組件化、平臺(tái)化是技術(shù)公司的共同目標(biāo),越來(lái)越多的技術(shù)公司推崇使用pod管理第三方庫(kù)以及私有組件,一方面使項(xiàng)目架構(gòu)...
    swu_luo閱讀 22,873評(píng)論 0 39
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,641評(píng)論 4 61
  • 一. CocoaPods的介紹 什么是CocoaPods?CocoaPods是一個(gè)負(fù)責(zé)管理iOS項(xiàng)目中第三方開(kāi)源庫(kù)...
    輝712閱讀 4,127評(píng)論 0 7
  • 我看著你 你望著我 花開(kāi)了
    昊水長(zhǎng)天閱讀 186評(píng)論 0 1
  • “有一天我要去維加斯?!?“我要去圖森?!?“好啊,那咱倆搭個(gè)伙兒?jiǎn)h,順道?!?說(shuō)罷這話,她倆天各一方,再?zèng)]見(jiàn)著面...
    草田羽人閱讀 472評(píng)論 0 1

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