CocoaPods的一些略为高级一丁点的使用
来源:互联网 发布:免费的程序化交易软件 编辑:程序博客网 时间:2024/06/12 23:12
http://www.cocoachina.com/ios/20150916/13384.html
记得我刚开始做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参数能够有效的抑制CocoaPods引入的第三方代码库产生的warning。
可以全部指定。
inhibit_all_warnings!
也可以针对指定。
pod
'ReactiveCocoa'
,
'~> 2.4'
, :inhibit_warnings =>
true
使用git的HEAD指向的分支
pod
'ISO8601DateFormatter'
, :head
使用 master 分支
pod
'ARAnalytics/Mixpanel'
, :git =>
'https://github.com/orta/ARAnalytics.git'
指定branch
pod
'Reachability'
, :git =>
'https://github.com/ashfurrow/Reachability.git'
, :branch =>
'frameworks'
指定tag
pod
'AFNetworking'
, :git =>
'https://github.com/gowalla/AFNetworking.git'
, :tag =>
'0.7.0'
指定commit
pod
'ARTiledImageView'
, :git =>
'https://github.com/dblockARTiledImageView'
, :commit =>
'1a31b864d1d56b1aaed0816c10bb55cf2e078bb8'
使用子库
可以这样
pod
'QueryKit/Attribute'
也可以这样指定多个子库
pod
'QueryKit'
, :subspecs => [
'Attribute'
,
'QuerySet'
]
使用本地代码
通过:path可以指定本地代码,不过需要确保目录包含podspec文件。
pod
'AFNetworking'
, :path =>
'~/Documents/AFNetworking'
指定target的依赖库
target :ZipApp
do
pod
'SSZipArchive'
end
排除taget
target
'Artsy Tests'
, :exclusive =>
true
do
pod
'FBSnapshotTestCase'
,
'1.4'
end
指定xcodeproj
默认会使用Podfile文件同级目录下第一个xcodeproj,但也可以指定
xcodeproj
'MyProject'
target :test
do
# This Pods library links with a target in another project.
xcodeproj
'TestProject'
end
指定连接的target
如果不显式指定连接的target,Pods会默认连接project的第一个target。如果需要,可以使用link_with指定连接一个或多个target
link_with
'MyApp'
,
'MyOtherApp'
指定依赖库的配置文件
pod
'PonyDebugger'
, :configuration => [
'Release'
]
指定target的配置文件
xcodeproj
'TestProject'
,
'Mac App Store'
=> :release,
'Test'
=> :debug
使用Dynamic Frameworks代替Static Libraries
通过标志use_frameworks!就可知开启这个功能。如果需要使用Swift的库,就必须加上这个标志了。
加快pod install/update 速度
使用CocoaPods来添加第三方类库,无论是执行pod install还是pod updat很多时候都卡在了Analyzing dependencies不动,这是更新本地的pod spec所以文件导致的。通过--no-repo-update标志可以不更新本地pod spec索引。当然首次install不应该添加这个标志,后续修改Podfile的时候可以适当使用,加快pod速度。
pod install --no-repo-update
pod update --no-repo-update
输出详细日志
pod update --verbose
XCode的Cocoapods插件
cocoapods-xcode-plugin是一个XCode的插件,让你方便操作Cocoapods,那是相当好用的一个插件。
END
- CocoaPods的一些略为高级一丁点的使用
- CocoaPods的一些略为高级一丁点的使用
- 使用CocoaPods可能遇到的一些问题。
- 初次安装使用cocoapods的一些问题
- Mac 上面使用cocoapods的一些问题
- 使用CocoaPods的一些仓库说明
- CocoaPods的一些记录
- 使用CocoaPods进行开发的一些问题及策略
- 使用cocoaPods时出现一些问题的解决方法
- Cocoapods高级使用
- cocoaPods:的一些错误整理
- 关于cocoapods的一些坑
- CocoaPods安装的一些坑
- cocoapods的一些错误解决
- 有关cocoaPods的一些坑
- 关于cocoapods的一些东西
- CocoaPods的使用
- 关于cocoapods的使用
- android apk --- Active的生命周期
- 【1】基于ATmega 8A -PU 的蓝牙遥控电源插座设计——【2、阻容降压原理及电路】
- 小计算机实现
- HDU 5437 模拟
- Unity Shader概念描述
- CocoaPods的一些略为高级一丁点的使用
- jz2440 ping问题
- eclipse不能进入debug模式的解决方法
- 详解大端模式和小端模式
- 英语翻译之路-3-20150917
- C/C++ 开发库 | C/C++ Development Library http://blog.csdn.net/herorenme/article/details/18795935
- unset() 与引用关系 总结
- 黑马程序员——java基础知识篇——>反射
- C++ 分糖果问题-求一组数的最大公倍数