文档章节

Cocoapods相关笔记

hell03W
 hell03W
发布于 2016/05/26 13:56
字数 578
阅读 86
收藏 1

个人常用的Profile中的库


platform :ios, '8.0'  
inhibit_all_warnings!
use_frameworks!

pod 'GPUImage', '~> 0.1.7' 
pod 'AFNetworking', '~> 2.0' #网络请求
pod 'MJRefresh', '~> 3.1.0' #上下拉刷新
pod 'FMDB' #数据库
pod 'SVProgressHUD', '~> 2.0.3' #alert提醒
pod 'Masonry', '~> 1.0.0' #屏幕适配
pod 'SDWebImage', '~> 3.7.1' #加载网络图片
pod 'SSKeychain', '~> 1.2.2' #缓存本地账号密码, 自动登录
pod 'IQKeyboardManager', '~> 3.2.0.3' #键盘管理
pod 'DZNEmptyDataSet', '~> 1.5.1' #tableView无数据占位图
pod 'JSPatch' #热补丁修复
pod 'ReactiveCocoa', '~> 4.1.0' #NB的框架
pod 'KSCrash', '~> 1.6.0'

cocoapods原理

cocoapods将所有的依赖库放到一个名为Pods的项目中, 然后主项目依赖Pods项目, 这样, 源码管理工作都从主项目转移到了Pods项目中.

  1. Pods项目最终会编译生成一个libPods.a的文件, 主项目只需依赖这个.a文件即可.
  2. 对于资源文件, cocoapods提供一个名为Pods-resourses.sh的bash脚本, 该脚本在每次项目编译时候都会执行, 将第三方的各种资源文件复制到目标目录中.
  3. cocoapods通过名为Pods.xcconfig的文件来在编译时设置所有的依赖和参数.

cocoapods运作原理:

cocoapods是一个开源的项目, 用Ruby写的, 代码托管在github上面. cocoapods功能实现依赖一个.spec文件, spec文件描述一个开源库在项目中的配置, 每个开源库都有一个spec文件, 这些spec文件统一托管在github上的cocoapods项目中, 如果我们需要将自己造的轮子添加pod依赖, 只需写一个spec文件, 并传到cocoapods的项目中去, 这时候通过pod search XXX即可查找到自己的项目.

其它

其它技术博客的讲解

唐巧, cocoapods基本讲解: http://blog.devtang.com/2014/05/25/use-cocoapod-to-manage-ios-lib-dependency/

cocoapods入门: http://studentdeng.github.io/blog/2013/09/13/cocoapods-tutorial/

编写一个spec文件: http://ishalou.com/blog/2012/10/16/how-to-create-a-cocoapods-spec-file/

注意事项:

  1. 在项目中添加依赖库之后, 是不能直接找到头文件的, 需要进行设置:

Target > Build Setting > User Header Search Paths 中添加变量: ${SRCROOT}, 并设置recursive.

  1. cocoapods引用ReactiveCocoa遇到的错误

如图:

如图

解决: 加一句话 use_frameworks!

platform :ios, '8.0'  
use_frameworks!

© 著作权归作者所有

共有 人打赏支持
hell03W
粉丝 10
博文 145
码字总数 109892
作品 0
朝阳
程序员
使用CocoaPods管理第三方库

DEC 2ND, 2012 前言 每种语言发展到一个阶段,就会出现相应的依赖管理工具, 或者是中央代码仓库。比如 Java: maven,Ivy Ruby: gems Python: pip, easy_install Nodejs: npm 随着iOS开发者的...

泊竹
2013/12/08
0
0
CocoaPods的安装使用和常见问题

原文:http://www.jianshu.com/p/6e5c0f78200a 一、什么是CocoaPods CocoaPods是iOS项目的依赖管理工具,该项目源码在Github上管理。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出...

lingfeng72
2015/11/09
0
0
CocoaPods安装遇到的问题

--------------- 原文地址:传送门 第一步:sudo gem update --system 如果失败则用这条语句 sudo gem install -n /usr/local/bin cocoapods 如果是最新版的会出现Latest version currently ...

qq_28379951
04/11
0
0
使用 CocoaPods 管理依赖库

文本首发于Ryan’s Zone 本篇内容将介绍Mac和iOS开发中必备的一个依赖库管理工具CocoaPods。 CocoaPods是什么 在iOS开发中势必会用到一些第三方依赖库,比如大家都熟悉的ASIHttpRequest、AFN...

孙启超
2014/04/13
0
0
Cocoa包管理器之Carthage详解及CocoaPods中心化+Carthage的二进制化

上篇博客详细的聊了CocoaPods的相关内容,今天我们就来介绍另一个Cocoa的包管理器Carthage。在上家公司用Swift开发工程时,用的就是Carthage。Carthage诞生于14年11月份,是用Swift语言开发的...

青玉伏案
07/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

20180920 rzsz传输文件、用户和用户组相关配置文件与管理

利用rz、sz实现Linux与Windows互传文件 [root@centos01 ~]# yum install -y lrzsz # 安装工具sz test.txt # 弹出对话框,传递到选择的路径下rz # 回车后,会从对话框中选择对应的文件传递...

野雪球
今天
0
0
OSChina 周四乱弹 —— 毒蛇当辣条

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 达尔文:分享花澤香菜/前野智昭/小野大輔/井上喜久子的单曲《ミッション! 健?康?第?イチ》 《ミッション! 健?康?第?イチ》- 花澤香菜/前野智...

小小编辑
今天
6
2
java -jar运行内存设置

java -Xms64m #JVM启动时的初始堆大小 -Xmx128m #最大堆大小 -Xmn64m #年轻代的大小,其余的空间是老年代 -XX:MaxMetaspaceSize=128m # -XX:CompressedClassSpaceSize=6...

李玉长
今天
1
0
Spring | 手把手教你SSM最优雅的整合方式

HEY 本节主要内容为:基于Spring从0到1搭建一个web工程,适合初学者,Java初级开发者。欢迎与我交流。 MODULE 新建一个Maven工程。 不论你是什么工具,选这个就可以了,然后next,直至finis...

冯文议
今天
1
0
RxJS的另外四种实现方式(四)——性能最高的库(续)

接上一篇RxJS的另外四种实现方式(三)——性能最高的库 上一篇文章我展示了这个最高性能库的实现方法。下面我介绍一下这个性能提升的秘密。 首先,为了弄清楚Most库究竟为何如此快,我必须借...

一个灰
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部