CocoaPods学习01-Podfile

CocoaPods学习02-PodSpec
CocoaPods学习03-pod install vs pod update
CocoaPods学习04-制作自己的pod库

命令语法

  • install! 设置安装方法和参数 方法现在仅支持'cocoapods',它的参数文档未做说明,具体待查
    install! 'cocoapods'

  • pod指出依赖关系

    • pod 'AFNetworking', ~>3.0.0版本号依赖不做过多解释,* 版本号

      • pod 'ABC' 始终使用最新版本
      • pod 'ABC', '0.9' 只使用0.9这个版本
      • 版本号支持>,>=,<,<=符号
        <= 0.9任何小于0.9版本
      • ~> 1.2.3大于等于1.2.3但是小于'1.3',倒数第一个数字可变但是要大于等于它,一般开发使用这种方式,这样可以避免pod库进行了大改动,我们需要适配代码
    • build configurations 编译配置设置
      pod 'ZJJDebugger', :configuration => 'Debug'只在debug环境下配置

    • subspecs 子模块依赖
      pod 'QueryKit', :subspecs => ['Attribute', 'QuerySet'],只引入该库下的后两个模块

    • 指定本地文件库依赖
      pod 'ABC', :path => '~/Documents/ABC'

    • 指定引入的分支,tag,提交号

      • 默认mater pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git'
      • 引入其他分支 pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :branch => 'dev'
      • 引入某个tag处 pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :tag => '3.1.1'
      • 引入某次提交处 `pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :commit => 'ssfsdf23123'
    • 如果某个lib在它的仓库外面没有podspec,也可以从其他位置引入该podspec
      pod 'JSONKit', :podspec => 'https://example.com/JSONKit.podspec'

  • target 需要指向Xcode target
    abstract_target 抽象基类target,不能指向具体的Xcode target
    inherit! 继承target

     # Note: 定义一个抽象基类target
     abstract_target 'Shows' do
     pod 'ShowsKit'
    
    #  ShowsiOS 继承'ShowsKit'和自己的'ShowWebAuth'
     target 'ShowsiOS' do
      pod 'ShowWebAuth'
     end
    
    # ShowsTw 继承'ShowsKit'和自己的'ShowTVAuth'
     target 'ShowsTV' do
       pod 'ShowTVAuth'
     end
    
    # ShowsTests 继承’search_paths‘跟默认一样全部继承 ’none‘是不继承
     target 'ShowsTests' do
       inherit! :search_paths
       pod 'Specta'
       pod 'Expecta'
     end
    end
    
  • inhibit_all_warnings!屏蔽所有警告
    inhibit_warnings => true 指定屏蔽或者不屏蔽具体库的警告
    pod 'SSZipArchive', :inhibit_warnings => false

  • source 默认是官方source,但是当你使用自己的source源后,也得把官方的source显示添加进去

    source 'https://github.com/artsy/Specs.git'
    source 'https://github.com/CocoaPods/Specs.git'
    
  • plugin 安装插件
    plugin 'slather'
    pre_install 下载完安装前指定操作
    post_install 安装完写入磁盘前指定操作

    post_install do |installer|
     installer.pods_project.targets.each do |target|
       target.build_configurations.each do |config|
         config.build_settings['GCC_ENABLE_OBJC_GC'] = 'supported'
       end
     end
    end
    

示例

platform :ios, '9.0'
inhibit_all_warnings!

target 'MyApp' do
 pod 'ObjectiveSugar', '~> 0.5'

 target "MyAppTests" do
   inherit! :search_paths
   pod 'OCMock', '~> 2.0.1'
 end
end

post_install do |installer|
 installer.pods_project.targets.each do |target|
   target.build_configurations.each do |config|
     config.build_settings['GCC_ENABLE_OBJC_GC'] = 'supported'
   end
 end
end

参考地址
cocoapods guides

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容

  • 经常使用CocoaPods来管理iOS项目中的第三方库,但是我们要使用CocoaPods来管理第三方库,前提是要写...
    qitianjin阅读 1,345评论 2 0
  • 转载自:http://blog.csdn.net/qitianjin/article/details/517738...
    YYT1992阅读 2,622评论 0 0
  • 项目组件化、平台化是技术公司的共同目标,越来越多的技术公司推崇使用pod管理第三方库以及私有组件,一方面使项目架构...
    swu_luo阅读 21,416评论 0 39
  • 基本介绍Cocoapods是非常好用的一个iOS依赖管理工具,使用它可以方便的管理和更新项目中所使用到的第三方库,...
    Havi_Li阅读 572评论 1 0
  • 去看新家房子盖的怎样了,穿过围挡时,被铁皮剌了两道在大拇指这儿,血慢慢冒出来了。开始没啥感觉,回走到小区大...
    画水何音阅读 265评论 0 0