Cocoapods相关笔记

个人常用的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!

转载于:https://my.oschina.net/whforever/blog/681687

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值