Swift Package Manager - 基础篇(教你 iOS 项目, 如何用 SPM 依赖第三方)

前言

系列目录

  1. Swift Package Manager - 基础篇(教你 iOS 项目, 如何用 SPM 依赖第三方)
  2. Swift Package Manager - 教你如何让自己的库支持SPM依赖

在网上找了很多关于Swift Package Manager 的, 基本都是一样的,都没说到如何集成到现有的项目中. 比如 iOS 项目, Mac 项目等等.
然后自己各种找资料,成功操作了一遍之后. 就顺便记录了下来,让一些没接触过的童鞋能快速上手.

Swift Package Manager 依赖

新建一个项目

这里我们先建立一个项目, 如下
在这里插入图片描述

添加 Swift Package Manager 依赖

File -> Swift Package -> Add Package Dependency…

在这里插入图片描述
或者点击到 PROJECT -> Swift Packages 也是可以的
在这里插入图片描述

输入库链接

这里我用 Alamofire 作为演示, 复制 github 的 git 地址, 点击 Next.
在这里插入图片描述

这里要, 等待一下. 如果这一步如等待过久, 可点击取消, 然后再次点击 Next
在这里插入图片描述

下载代码选项的配置

验证成功的话,出现以下该界面

这里有三个选项, 是选择要以依赖的代码, 以哪种方式下载

  • Version: 对应库的 Release 版本. 这里可选择大于小于这些规则
  • Branch: 直接下载某个分支的代码
  • Commit: 某一个提交记录的 Id

这里就直接选择默认 4.9.1 版本了

在这里插入图片描述

点击 Next, 这时候就开始下载代码了

在这里插入图片描述

完成

下载成功后, 会出现以下界面, 这里一般可直接点击 Finish 就可以了

在这里插入图片描述

添加完之后, 项目是这样的

在这里插入图片描述

测试是否真的依赖成功

测试一下, 是否真的添加成功依赖了

在这里插入图片描述

到这里, 整个依赖流程就完成了. ✌️

更新依赖

选择 File -> Swift Packages -> Update to Latest Package Versions 即可
在这里插入图片描述

额外的一些知识点

如果已经完成依赖的同学, 看了看项目文件结构. 是不是没发现 Alamofire 的源码, 也没发现类似 CocoaPods 的 Podfile 这种写依赖关系的文件. 接下来我们一件件去探索一下

第三方源码存放位置

其实我们在项目中对着 Alamofire 里面的文件, Show Finder 一下, 就能轻松找到在哪了, 如下图

在这里插入图片描述

具体路径: ~/Library/Developer/Xcode/DerivedData/XQTestOne-dcchhjjlbxiykzfmyuzjpihdlfri/SourcePackages/checkouts/Alamofire
这里就是 Xcode 项目编译缓存的地方

依赖关系是写在哪里呢

一般配置文件, 都是在 xxx.xcodeproj/project.pbxproj 文件下.
接下来, 去验证一下, 是否真的在里面, 右键 xxx.xcodeproj 文件, 选择 显示包内容
在这里插入图片描述

然后我们双击打开 project.pbxproj 文件.
在这里插入图片描述

输入 Alamofire 搜索
然后就发现了, Alamofire 的配置信息.
看来推断没错, Swift Package 配置信息就是存储在此处.
在这里插入图片描述

CocoaPod 和 SPM 是否能一起使用

可以的, 完全没问题, 如下图

在这里插入图片描述

觉得对你有用的童鞋, 就点个赞吧. (づ ̄3 ̄)づ╭❤~

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值