记得刚开始做iOS开发的时候,还没有项目依赖管理工具。需要引入第三方库的时候,就比较麻烦了。要么直接复制库,要么添加依赖项目。在CocoaPods出来之前,这种情况不会改变。项目依赖管理并不是CocoaPods的首创。它已经出现在很多其他的工程开发中,甚至已经成为开发的标准配置。但是,CocoaPods仍然对iOS/Mac开发做出了巨大贡献。在这里为CocoaPods做贡献谢谢。CocoaPods的功能不算太强大,但大部分时间都很好用。仅仅最基本的样例配置就可以满足你项目的大部分需求,但是多了解一些特性会让你得心应手。指定源CocoaPods支持私有Spec仓库,我们可以自己创建源,也可以使用非官方源,只要符合规定,我们就可以指定。source'https://github.com/artsy/Specs.git'source'https://github.com/CocoaPods/Specs.git'抑制警告inhibit_warnings参数可以有效抑制引入的第三方代码库产生的警告可可豆。都可以指定。inhibit_all_warnings!也可以指定为.pod'ReactiveCocoa','~>2.4',:inhibit_warnings=>true使用git的HEAD指向的分支pod'ISO8601DateFormatter',:head使用主分支pod'ARAnalytics/Mixpanel',:git=>'https://github.com/orta/ARAnalytics.git'指定branchpod'Reachability',:git=>'https://github.com/ashfurrow/Reachability.git',:branch=>'frameworks'指定tagpod'AFNetworking',:git=>'https://github.com/gowalla/AFNetworking.git',:tag=>'0.7.0'指定commitpod'ARTiledImageView',:git=>'https://github.com/dblockARTiledImageView',:commit=>'1a31b864d1d56b1aaed0816c10bb55cf2e078bb8'可以像这样使用分库pod'QueryKit/Attribute'也可以指定多个分库pod'QueryKit',:subspecs=>['Attribute','QuerySet']uselocalcodetopass:path可以指定Native代码,但是需要确保目录包含podspec文件。pod'AFNetworking',:path=>'~/Documents/AFNetworking'指定target的依赖库会使用与Podfile文件同目录的第一个xcodeproj,但也可以指定xcodeproj'MyProject'target:testdo#ThisPodslibrarylinkswithatargetinanotherproject.xcodeproj'TestProject'end指定连接的目标如果你没有明确指定连接的目标,Pods会默认连接到项目的第一个目标。如果需要,可以使用link_with指定一个或多个targetlink_with'MyApp','MyOtherApp'指定环境如下,只在Debug环境下的项目中添加PonyDebugger库。pod'PonyDebugger',:configuration=>['Debug']指定目标配置文件xcodeproj'TestProject','MacAppStore'=>:release,'Test'=>:debug通过标志use_frameworks使用动态框架而不是静态库!可以看到这个功能是开启的。如果你需要使用Swift库,你必须添加这个标志。加速pod安装/更新使用CocoaPods添加第三方库。不管是执行podinstall还是podupdate,很多时候都卡在Analyzingdependencies。这是由更新本地pod规范文件引起的。--no-repo-update标志无法更新本地pod规范索引。当然***install不应该加这个flag,后面修改Podfile的时候可以适当使用,以加快pod的速度。podinstall--no-repo-updatepodupdate--no-repo-update输出详细日志podupdate--verboseXCode的Cocoapods插件cocoapods-xcode-plugin是一个XCode插件,可以方便的操作Cocoapods,是一个非常好用的插件插入。END的水平不够,如有错误,请指正。
