Cocoapods的常用技巧

官网地址:https://cocoapods.org/

相关指令

  • 查询当前cocoapods版本:
pod --version
  • 更新当前cocoapods:
sudo gem install cocoapods
  • 在项目中第一次使用CocoaPods, 进行安装时;
    在Podfile中增加或删除某个pod后, 也是使用这个命令. 而不是pod update
pod install
  • CocoaPods将尝试查找PODNAME更新的pod版本
pod update    // 更新全部
pod update AFNetworking    // 更新单个库
  • CocoaPods会列出所有在Podfile.lock中的有新版本的pod库。这意味着当你对这些pod使用pod update PODNAME时,他们会更新(只要新版本仍然遵守你在Podfile中做的类似于pod 'MyPod', '~>x.y'这样的限制)
pod outdated

podfile的相关写法

pod 'AFNetworking'                 //不显式指定依赖库版本,表示每次都获取最新版本
pod 'AFNetworking', '~>0'          //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

pod 'AFNetworking', '~> 0.1.2'     //使用大于等于0.1.2但小于0.2的版本
pod 'AFNetworking', '~>0.1'        //使用大于等于0.1但小于1.0的版本

pod 'AFNetworking', '2.0'          //只使用2.0版本
pod 'AFNetworking', '= 2.0'        //只使用2.0版本

pod 'AFNetworking', '> 2.0'        //使用高于2.0的版本
pod 'AFNetworking', '>= 2.0'       //使用大于或等于2.0的版本
pod 'AFNetworking', '< 2.0'        //使用小于2.0的版本
pod 'AFNetworking', '<= 2.0'       //使用小于或等于2.0的版本

pod 'AFNetworking', :git => 'http://gitlab.xxxx.com/AFNetworking.git', :branch => 'R20161010'  //指定分支 

pod 'AFNetworking',  :path => '../AFNetworking'  //指定本地库

# 忽略引入库的所有警告(强迫症者的福音啊)
inhibit_all_warnings!

问题总结

  • ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1100.0.33.8.0_0' Reader: '1001.0.46.4_0')', using libLTO version 'LLVM version 10.0.1, (clang-1001.0.46.4)' for architecture armv7
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    原因:某个库不支持bitcode。
    解决:在target->Build Settings->Enable Bitcode,选No 关掉bitcode;或者将不支持的库回滚到以前支持的版本(如果存在)。

    关掉bitcode

  • **CDN: trunk Repo update failed **
    原因:CocoaPods 1.8将CDN切换为默认的spec repo源,并附带一些增强功能!CDN支持最初是在1.7版本中引入的,最终在1.7.2中完成。 它旨在大大加快初始设置和依赖性分析。
    解决:1. podfile文件中指定source源为master:
    source 'https://github.com/CocoaPods/Specs.git'(一般情况下,加在最顶部的位置)
    2.执行pod repo list查看source源的list
    3.执行pod repo remove trunk移除trunk源

如有新的总结,后续会有更新。。。

参考文献

  • http://www.cocoachina.com/articles/24338
  • https://www.jianshu.com/p/bf1cbe49cb5d
  • https://github.com/CocoaPods/CocoaPods/issues/9303

你可能感兴趣的:(Cocoapods的常用技巧)