一、进项项目文件中
用xcode创建一个project,已经创建过的话,用终端进入这个project.我用Xcode创建的CcocoaPodsDemo放在桌面,现在输入指令进入这个project中:
cd desktop/CcocoaPodsDemo
二、在项目中创建一个Podfile(名字可以随便起)文件
touch Podfile
查看一下文件里面有没有这个文件
三、编辑Podfile文件
双击进入Podfile文件,编辑一下Podfile
platform :ios, '7.0'
inhibit_all_warnings!
xcodeproj 'CocoaPodsDemo'
workspace 'CocoaPodsDemo'
use_frameworks!
target 'CocoaPodsDemo' do
pod 'Reachability', '~> 3.2'
pod 'JSONKit', '~> 1.5pre'
pod 'AFNetworking', '~> 3.0.4'
end
编辑完PodFile保存一下,在终端执行一下
pod install
四、CocoaPods常用语法解释
target 'CocoaPodsDemo' do
- 指定特定CocoaPodsDemo的依赖库
platform:ios,'8.0'
- 指定了开源库应该被编译在哪个平台以及平台的最低版本
- 若不指定平台版本,官方文档里写明各平台默认值为iOS:4.3,OS X:10.6,tvOS:9.0,watchOS:2.0
inhibit_all_warnings!
- 屏蔽cocoapods库里面的所有警告
inherit! :search_paths
- 明确指定继承于父层的所有pod,默认就是继承的
use_frameworks!
- 使用frameworks动态库替换静态库链接
pod 'YYMOdel', :inhibit_warnings => true
- 屏蔽制定YYMOdel库里面的警告
workspace '项目空间名'
xcodeproj '工程文件名'
- 指定项目空间名字,默认就是项目的名字
- 指定工程文件名,默认就是项目的名字
inherit! :search_paths
- 指定继承于父层的所有pod,默认就是继承的
pod 'YYMOdel', //表示每次都获取最新版本
pod 'YYMOdel', '0.01'//只使用0.0.1版本
pod 'YYMOdel', '>0.0.1' //使用高于0.0.1的版本
pod 'YYMOdel', '>=0.0.1' //使用大于或等于0.0.1的版本
pod 'YYMOdel', '<0.0.2' //使用小于0.0.2的版本
pod 'YYMOdel', '<=0.0.2' //使用小于或等于0.0.2的版本
pod 'YYMOdel', '~>0.0.1' //使用大于等于0.0.1但小于0.1的版本,相当于>=0.0.1&&<0.1
pod 'YYMOdel', '~>0.1' //使用大于等于0.1但小于1.0的版本
pod 'YYMOdel', '~>0' //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
//使用仓库中的master分支:
pod 'YYMOdel', :git => 'https://github.com/ibireme/YYModel.git'
//使用仓库的其他分支:
pod 'YYMOdel', :git => 'https://github.com/ibireme/YYModel.git' :branch => 'release'
//使用仓库的某个tag:
pod 'YYMOdel', :git => 'https://github.com/ibireme/YYModel.git', :tag => '0.0.1'
//或者指定一个提交记录:
pod 'JYCarousel', :git => 'https://github.com/Delyer/YYMOdel.git', :commit => '5e473f1e0530bb3799f2f0d70554b292570bd8f0'
pod 'JSONKit', :podspec => 'https://example.com/JSONKit.podspec'
- 一个podspec能够从外部的仓库源的获取
五、第三方库更新
pod repo update
- 执行 pod repo update更新本地仓库,作用类似pod setup。
- 不过这个命令经常不单独调用。比如执行pod setup、pod search、pod install、pod update会默认执行pod repo update
pod install
- 把Podfile内全部的库更新重新安装
pod install --verbose --no-repo-update
- 该命令只安装新添加的库,已更新的库忽略(推荐这种比较速度比较快一点)
- 安装开源库之前, 不会执行pod repo update指令
pod update
- 所有第三方到最新版本
pod update 库名 --verbose --no-repo-update
- 更新指定的库更新到最新版本,其它库忽略
- 安装开源库之前, 不会执行pod repo update指令
六、生成的文件
- Podfile文件:
项目的第三方库的依赖以及项目的基本配置 - Podfile.lock文件:
最后一次更新Pods时, 保存所有第三方框架的版本号 - xxx.xcworkspace文件:
重新生成一个工作空间,打开这个工程文件来进行开发 - pods目录:
保存通过pod install或者pod update下载下来的第三方开源库的源代码
总结
CocoaPods还是要多实践,多操作。体验管理第三方库的便利,最后祝大家学有所成。