ReactiveCocoa添加cocoapods 配置图文教程及坑总结

本文即谢了如何配置,配置过程中遇到的坑也总结了,目前发现如何配置RAC这方面的文章太少了,其实坑还是有一点的,这些坑都需要google 才能解决


正题

使用CocoaPods在使用之前,确保你需要的库在Specs repository或者cocoapods.org上可以查询到。在新的项目中使用CocoaPods
创建一个新的Xcode项目。步骤如下:

一) 为项目添加cocoapod,已经添加过cocoapod 忽略此步

    1. 打开终端,执行
      $ cd your project direction
      ,进入到你的项目目录下,前提是新建一个项目哦。
    1. $ touch Podfile 创建一个Podfile文件。打开Podfile,推荐使用终端打开,cd 到Podfile 文件下在第一行写下platform :ios, '8.0'指定平台以及所支持的版本。
    1. 在单独一行用 pod 'libraryName',指定需要导入的依赖。

如何使用ReactiveCocoa
ReactiveCocoa可以在iOS和OS X的应用开发中使用,对于iOS开发者,可以将RAC源码下载编译后,使用编译好的libReactiveCocoa-iOS.a
文件。
开发者也可以用CocoaPods来设置目标工程对ReactiveCocoa的依赖,只需要编辑Podfile文件,增加如下内容即可:
pod 'ReactiveCocoa', ‘4.0' 目前的最新的
或者
pod 'ReactiveCocoa

    1. CocoaPods提供$ pod init
      ,可以为我们创建具有模板的Podfile文件。在$ pod install
      执行完成之后,会生成一个projectName.xcworkspace文件,之后使用这个文件来打开项目。
    1. 在终端中执行$ pod install,就会为项目导入执行的依赖。

**可能问题 Setting up CocoaPods master repo 一直不动
终端中输入 cd ~/.cocoapods 再输入 du -sh * 查看下载了多少 **


卡主cocoa.gif

一直不动,解决方案见我的文章: CocoaPods update 慢的较好的解决方案

cocoapod 安装好后,执行如下命令 打开podfile 文件并编辑

//3.0.0需要最底8.0的ioS部署系统 否则会报错提示的
platform :ios, ‘8.0‘
//use_frameworks!   一定要加的,感叹号也不能少
use_frameworks! 
target “demo” do
pod 'ReactiveCocoa', ‘3.0’

end

//上面的那个会报错 解决方案在这头文件找不到的报错解决方案


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 坑总结

安装成功了打开工程的.xcworkspace,并不会一番就可以顺利编译通过

Snip20160710_13.png

2.1) 会出现如下错误:

缺少证书的错误

上面的错误 在pod的target中选一个证书就可以了,pods-demo,ReactiveCocoa,Result 三个红色箭头指的地方都要选择


缺少制定的证书选择证书的步骤

2.2)下面的错误 需要信任证书

,这是xcode8 的新特性,以前只有企业账号才需要信任证书,现在开发账号也需要了,去设置->通用->描述文件, 点击信任证书,就可搞定


Snip20160710_10.png

2.3) 报错的EXTKeypathCoding.h等几个.h 文件 找不到

,有同学说pod 'ReactiveCocoa’ 修改为pod 'ReactiveCocoa’,:podspec => 'https://gist.githubusercontent.com/PaulTaykalo/04f8e2ee25b9d57f03455ccafd541b34/raw/e94f3bec7a9450ecd0f0cdc9b4899deb0b91d758/ReactiveCocoa.podspec.json',就可以解决.h文件会报错的问题,发现不好用,我的方法是加上RAC 的前缀就可以,好几个文件,都需要加RAC 的前缀,只要说找不到文件,就加RAC 前缀,就可以通过,当然也有其他的办法,发现不是完全解决.

报错的文件

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


加上RAC 前缀的后解决

2.4) 会有报错swift 文件错误,主要是语法错误

如果项目中没有用到swift ,直接可以删除掉ReactiveCocoa 库中的所有swift 文件,即可变异通过.至此所有的问题都解决了,就可以愉快的玩啥RAC了.

去google 搜索相关的报错,很多老外都说集成RAC 会有a lot of trouble 的,trouble 我都解决了 ,分享出来,有问题欢迎留言.

2.5) 附上demo的podfile 文件 ,这个可能会用的上

使用RAC 2.0版本的podfile 文件,RAC 2.0 版本库里面就不会有swift 了

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

使用RAC 4.0版本的podfile 文件,RAC 4.0 版本库里面有swift 了文件,支持swift3 ,但是swift会报错,我用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

上面的两个podfile 文件两个选择一个就行了,兼容swift选择后者,不兼容swift 选择前者即可

0710补充在公司电脑安装过程:

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丶
    如下方法慎用,
项目其他地方需要-objc-(比如环信)会出现崩溃,解决方法,把删除的objc加上

ps:第一次为项目集成cocoa pod 和RAC项目所有的文件都需要提交, 另外第二次提交 workspace 尽量少提交避免冲突

______
- 作者开发经验总结的文章推荐,持续更新学习心得笔记
[Runtime 10种用法(没有比这更全的了)](//www.greatytc.com/p/3182646001d1)
[成为iOS顶尖高手,你必须来这里(这里有最好的开源项目和文章)](//www.greatytc.com/p/8dda0caf47ea)
[iOS逆向Reveal查看任意app 的界面](//www.greatytc.com/p/060745d5ecc2)
[JSPatch (实时修复App Store bug)学习(一)](//www.greatytc.com/p/344db07a2374)
[iOS 高级工程师是怎么进阶的(补充版20+点)](//www.greatytc.com/p/1f2907512046)
[扩大按钮(UIButton)点击范围(随意方向扩展哦)](//www.greatytc.com/p/ce2d3191224f)
[最简单的免证书真机调试(原创)](//www.greatytc.com/p/c724e6282819)
[通过分析微信app,学学如何使用@2x,@3x图片](//www.greatytc.com/p/99f1f924ae45)
[TableView之MVVM与MVC之对比](//www.greatytc.com/p/d690b5d97201)
[使用MVVM减少控制器代码实战(减少56%)](//www.greatytc.com/p/f85363c82ea1)
[ReactiveCocoa添加cocoapods 配置图文教程及坑总结](//www.greatytc.com/p/66f0c7e1ced8)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 196,540评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,640评论 2 374
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,643评论 0 326
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,672评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,525评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,387评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,809评论 3 387
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,450评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,743评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,787评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,560评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,406评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,824评论 3 300
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,048评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,335评论 1 253
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,784评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,997评论 2 337

推荐阅读更多精彩内容