使用 CocoaPods

2018-03-12  本文已影响0人  Natus_Vincere

将 Pod 添加到Xcode 工程

开始之前
安装
target 'MyApp' do
pod 'AFNetworking', '~> 3.0'
pod 'FBSDKCoreKit', '~> 4.9'
end
$ pod install in your project directory.

用CocoaPods创建一个新的Xcode项目

要使用CocoaPods创建一个新项目,请遵循以下步骤:

platform :ios, '9.0'
target 'MyApp' do
pod 'ObjectiveSugar'
end

与现有的工程集成

将CocoaPods与现有的工作空间集成需要在你的Podfile中增加一行。 只需在目标块外部指定.xcworkspace文件名,如下所示:

workspace 'MyWorkspace'

何时使用 pod install 何时使用 pod update

很多人对何时使用 pod install 以及何时使用 pod update 感到困惑。 尤其是,他们经常使用 pod update,而不是使用 pod install
您可以在指南(何时使用 pod install 何时使用 pod update)中找到有关何时使用每种命令的详细说明以及每个命令的预期用法。

我应该检查Pods目录到源代码控制吗?(连同 Pods 一起更新到代码库中?)

您是否签入Pods文件夹取决于您,因为工作流程因项目而异。 我们建议您将Pods目录保持在源代码管理下,并且不要将其添加到.gitignore中。 但最终这个决定取决于你:

检查Pods目录的好处

忽略Pods目录的好处

无论您是否检入Pods目录,Podfile和Podfile.lock都应始终保持在版本控制之下。

无论您是否检入Pods目录,Podfile和Podfile.lock都应始终保持在版本控制之下。

什么是Podfile.lock

此文件在第一次运行pod安装后生成,并跟踪已安装的每个Pod的版本。 例如,想象在Podfile中指定的以下依赖项:

pod 'RestKit'

运行 pod 安装将安装当前版本的 RestKit ,从而生成一个 Podfile.lock ,指出安装的确切版本(例如 RestKit 0.10.3). 在稍后的时间点在另一台计算机上对此假设项目运行 pod install 仍会安装 RestKit 0.10.3 ,即使有更新的版本可用. 除非在 Podfile 中更新依赖项或调用了pod update(这将导致生成新的 Podfile.lock ),否则 CocoaPods 将遵循 Podfile.lock 中的 Pod 版本. 通过这种方式,CocoaPods 避免了因依赖关系发生意外更改而导致的麻烦。

幕后发生了什么

在Xcode中,直接从ruby源代码引用:

请注意,如果CocoaPods静态库已经在您的项目中,则跳过步骤3。 这主要基于Jonah Williams在静态库上的工作。

Pods and Submodules

CocoaPods和git子模块试图解决非常类似的问题。 都努力简化在您的项目中包含第三方代码的过程。 子模块链接到该项目的特定提交,而CocoaPod绑定到版本化的开发人员版本。

从 Submodules 切换到 CocoaPods

在决定完全切换到CocoaPods之前,请确保您当前使用的库全部可用。 记录你当前使用的库的版本也是一个好主意,这样你可以设置CocoaPods使用相同的版本。 逐步做到这一点也是一个好主意,依赖性依赖而不是一个重大举措。

上一篇 下一篇

猜你喜欢

热点阅读