iOS基础:CocoaPods使用说明(官方部分译文)

###一、添加代码库到你的Xcode工程 开始之前 (1)在 Specs repository或者网站cocoapods.org确认你所需要的三方库有提供; (2)在你的电脑上安装CocoaPods

####1.安装

  • 创建一个空的Podfile文件,然后添加你的依赖库,格式如下:
target 'MyApp' do 
    pod 'AFNetworking', '~> 3.0'
    pod 'FBSDKCoreKit', '~> 4.9'
end
复制代码
  • 在你的工程文件夹中运行指令$ pod install
  • 打开App.xcworkspace并编译

####2.创建一个含CocoaPods的Xcode工程

创建一个含CocoaPods的Xcode工程的简单步骤:

  • 和平常一样在Xcode中创建新工程
  • 打开一个终端窗口,使用**$ cd**命令切换到你的工程目录
  • 创建一个空的Podfile文件,也可以使用命令**$ pod init**来完成
  • 打开你的Podfile文件,第一行应该指定使用平台和支持的系统版本,格式:
platform :ios, '9.0'
复制代码
  • 为了能正常使用 CocoaPods,您需要定义关联的Xcode target。例如你正在写一个iOS app,它就是你的app名字。使用target '$TARGET_NAME' do和几行之后的end作为target之间的区分。
  • 在你的target区块中,用**pod '$PODNAME'**独占一行来添加三方库。 格式如下:
target 'MyApp' do
   pod 'ObjectiveSugar'
end
复制代码
  • 保存Podfile文件
  • 执行命令**$ pod install**
  • 打开已经创建的工作空间MyApp.xcworkspace,后面开发这个应用就使用这个工作空间了。

####3.整合一个已经存在的工作空间 整合一个已经存在的工作空间需要在Podfile文件中再加一行代码。只需要在target区块外部简单地指定**.xcworkspace**工作空间的文件名,比如:

workspace 'MyWorkspace'
复制代码

###二、什么时候使用pod install或pod update?

很多人对于什么时候使用 pod install和什么时候使用pod update感到困惑。尤其是,本应该使用pod install,却使用了pod update

很多人一开始可能都认为pod install是在首次配置和使用三方库的时候使用,然后就都使用pod update。但是,根本不是这样的。

使用总结:

  • 安装新的三方库,请使用pod install,即使已经创建了Podfile文件和运行Pod install命令。也就是说只是添加和删除三方库都是使用Pod install命令
  • 更新某个三方库的版本才使用pod update [PODNAME]

####1.命令的详细说明 #####(1)pod install 第一次安装三方库,添加、升级或者移除三方库都可以使用这个命令,注意点如下

  • 每次执行pod install命令下载和安装新的三方库时,会在Podfile.lock文件中写入每一个三方库安装的版本。这个文件会监控和记录三方库的版本;
  • 当你执行pod install命令时,只会处理在Podfile.lock文件中没有的依赖关系;
    • Podfile.lock文件中列出的三方库,CocoaPods会下载对应的准确版本,不会去检查和下载新版本
    • 没有在Podfile.lock文件中列出的三方库,CocoaPods会根据Podfile中的描述去查找合适的版本;

#####(2)pod outdated 当你执行pod outdated指令时,CocoaPods会列出在Podfile.lock文件中列出的已安装的三方库的新版本。这表示如果你执行命令pod update PODNAME,指定的三方库就会更新,只要仍然符合Podfile中定义的条件,如pod 'MyPod', '~>x.y'

#####(3)pod update

当你执行pod update PODNAME指令时, CocoaPods会去指定三方库的新版本,而不考虑Podfile.lock中列出的版本。可能会更新到最新的符合你在Podfile 文件中定义的版本。

如果你执行pod update而不带三方库名,CocoaPods将可能会更新所有在Podfile中列出的三方库版本到最新符合Podfile的版本;

####2.使用简明 使用pod update PODNAME,你将只更新指定的三方库(检查响应的新版本和更新三方库),与不更新已安装三方库版本的pod install命令不同

当你在Podfile文件中添加一个三方库时,你应该运行pod install命令去安装新的三方库,而不是pod update,以避免把已经安装的三方库更新的风险。

当你要更新指定或者全部三方库时,你只应该使用pod update命令。

####3.提交你的Podfile.lock文件

如果你不想提交你的三方库文件夹到代码库,你应该提交你的Podfile.lock文件。否则会破坏掉你原先安装的三方库版本逻辑。 ####4.单单使用Podfile文件是不够的

因为每一个三方库都会更新,不同的时间根据Podfile中的定义获得的三方库可能不同(Podfile文件中的版本定义通常是范围控制的),所以需要Podfile.lock文件配合使用(Podfile.lock会记录当前安装的三方库版本),并且恰当使用pod install和pod update命令。

###三、要不要把三方库文件夹加入源码管理?

要不要添加,取决于你。我们建议你加入源码管理,但是不要添加到版本控制(.gitignore)。

  • 加入的好处 (1)只要克隆完代码就可以直接运行,不需要安装CocoaPods等一系重新安装三方库的繁琐操作; (2)工程依赖的三方库永远存在,即使三方库的来源都没了,如GitHub (3)克隆完代码,三方库就和原来安装的一模一样。

  • 不加入的好处 (1)代码控制仓库会更小,节省空间; (2)只要三方库来源存在,CocoaPods就有能力再次创造一样的三方库安装配置 (3)源码管理的时候不会因为三方库的版本不同而产生冲突

不论是否将三方库文件夹加入源码管理,都应该将Podfile和Podfile.lock加入版本控制。

# Xcode
.DS_Store
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
!default.xcworkspace
xcuserdata
*.moved-aside
*.mobileprovision
DerivedData
.idea/
# Pods - for those of you who use CocoaPods可选
Pods
Podfile.lock
复制代码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值