前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CocoaPods

CocoaPods

原创
作者头像
花落花相惜
发布2021-12-04 10:28:15
5720
发布2021-12-04 10:28:15
举报
文章被收录于专栏:花落的技术专栏
  • 1.指定源

CocoaPods支持Spec仓库,可以建立自己的source,也可以使用非官方的源,只要是符合规定的都可以自定使用。undefined 私有库创建

代码语言:txt
复制
source 'https://github.com/624990742/SwiftBase/Specs.git'//自己私有的
代码语言:txt
复制
source 'https://github.com/CocoaPods/Specs.git'//官方
  • 2.隐藏警告

inhibit_warnings参数能够有效的隐藏引入的pods第三方库产生的warning警告

(1).不显示任何pod库的警告可以在项目中Podfile文件中加入inhibit_all_warnings!
代码语言:txt
复制
platform :ios, '11.0'
代码语言:txt
复制
inhibit_all_warnings!  # pod 的工程不显示任何警告
(2).针对指定的库隐藏警告
代码语言:txt
复制
pod 'SnapKit', '~> 2.4', :inhibit_warnings => true
  • 3.使用git的HEAD指向的分支
代码语言:txt
复制
pod 'SwiftBase', :head
  • 4.使用git指定使用 master 分支
代码语言:txt
复制
pod 'Masonry', :git => 'https://github.com/SnapKit/Masonry.git'
  • 5.使用git指定branch
代码语言:txt
复制
pod 'Reachability', :git => 'https://github.com/ashfurrow/Reachability.git', :branch => 'frameworks'
  • 6.使用git指定tag
代码语言:txt
复制
pod 'Masonry', :git => 'https://github.com/SnapKit/Masonry.git', :tag => '1.1.0'
  • 7.使用git指定commit
代码语言:txt
复制
pod 'ARTiledImageView', :git => 'https://github.com/dblockARTiledImageView', :commit => '1a31b864d1d56b1aaed0816c10bb55cf2e078bb8'
  • 8.使用第三方库的子库
(1).指定一个
代码语言:txt
复制
pod 'QueryKit/Attribute'
(2).指定多个子库
代码语言:txt
复制
pod 'PolyvCloudClassSDK',:subspecs => ['Core','Player']
  • 9.使用本地代码

:path可以指定本地代码,不过需要确保目录包含podspec文件。

代码语言:txt
复制
 pod 'Masonry', :path => '~/Documents/Masonry'
  • 10.指定target的依赖库
代码语言:txt
复制
target :MyApp do  
代码语言:txt
复制
  pod 'Masonry'
代码语言:txt
复制
end
  • 11.排除taget
代码语言:txt
复制
target 'MyApp Tests', :exclusive => true do  
代码语言:txt
复制
  pod 'FBSnapshotTestCase', '1.4'
代码语言:txt
复制
end
  • 12.排除taget
代码语言:txt
复制
target 'YOUR_APP_NAME_HERE_Tests', :exclusive => true do
代码语言:txt
复制
  pod 'Nimble-Snapshots'
代码语言:txt
复制
end
  • 13.指定xcodeproj

默认会使用Podfile文件同级目录下第一个 xcodeproj,但也可以指定。

代码语言:txt
复制
xcodeproj 'MyProject'
代码语言:txt
复制
target :test do  
代码语言:txt
复制
  # This Pods library links with a target in another project.
代码语言:txt
复制
  xcodeproj 'TestProject'
代码语言:txt
复制
end
  • 14.指定连接的target

使用link_with可以指定连接一个或者多个target,不显式指定的话,pods默认会链接project的第一个target。

代码语言:txt
复制
link_with 'MyFistApp', 'OtherOneApp'
  • 15.指定依赖库的配置文件
代码语言:txt
复制
pod 'PonyDebugger', :configuration => ['Release']
  • 16.指定target的配置文件
代码语言:txt
复制
xcodeproj 'TestProject', 'Mac App Store' => :release, 'Test' => :debug
  • 17.使用Dynamic Frameworks代替Static Libraries
代码语言:txt
复制
通过标志use_frameworks!就可知开启这个功能。如果需要使用Swift的库,就必须加上这个标志了。
  • 18.引入第三方库的时候通常会有指定库版本的操作,就比如pod 'Masonry', '~> 1.1.0'对应的操作符解释如下:
代码语言:txt
复制
  pod 'Masonry','> 1.1.0' 大于1.1.0的版本,不包括1.1.0版本
代码语言:txt
复制
  pod 'Masonry','>= 1.1.0' 大于等于1.1.0的版本
代码语言:txt
复制
  pod 'Masonry','< 1.1.0'小于1.1.0的版本,不包括1.1.0版本
代码语言:txt
复制
  pod 'Masonry','<= 1.1.0' 小于等于1.1.0的版本
代码语言:txt
复制
  pod 'Masonry','~> 1.1.0' 相当于'>= 1.1.0 且 ‘< 1.2.0’
代码语言:txt
复制
  pod 'Masonry','~> 1.1' 相当于'>= 1.1 且 ‘< 2.0’
代码语言:txt
复制
  pod 'Masonry','~> 0' 相当于不写,即最新版本

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • (1).不显示任何pod库的警告可以在项目中Podfile文件中加入inhibit_all_warnings!。
  • (2).针对指定的库隐藏警告
  • (1).指定一个
  • (2).指定多个子库
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档