iOS项目中第三方开源库的工具有Cocoapods和Carthage,swift官方出了一个包管理工具SPM(Swift Package Manager)。
首先,大体讲一下Cocoapods和Carthage的区别:CocoaPods会直接创建和修改项目的workspace配置,创建的是高度集成的项目。Carthage不需要创建workspace,仅仅需要依赖打包好的framework文件即可。CocoaPods相对来说功能要比Carthage多很多,而Carthage的配置比较简单。
Swift 包依赖工具和 Carthage 工作原理类似,都是去中心化的包管理系统,它要求开发者提供依赖包的 Git 地址。不过目前SPM还没有在iOS项目上使用。下面讲一下写ios的swift项目过程中,如何使用Carthage。
1.Carthage安装卸载
1.1 安装Carthage,2种方法:
(1)可以在官网上下载Carthage对应版本的pkg文件,安装即可。比如下载0.11版本的Carthage包:下载pkg文件,安装carthage version 0.11版本。
(2)用brew安装:
brew update
brew install carthage
1.2 卸载Carthage:
brew uninstall carthage
2. 使用Carthage
2.1 创建Cartfile
在项目的根目录下,创建Cartfile:
vim Cartfile
2.2 编写Cartfile:写入要管理的第三方库,比如socket.io和ReactiveCocoa
github "socketio/socket.io-client-swift" ~> 6.0.0 # Or latest version
github "ReactiveCocoa/ReactiveCocoa"
2.3 运行Cartfile:
carthage build --platform iOS
carthage update --platform ios
运行成功后,会发现目录下多了一个Cartfile.resolved文件和Carthage的目录。在/Carthage/Build/iOS目录下就会看到对应的第三方库。