本文为 Eul 样章,如果您喜欢,请移步 AppStore/Eul 查看更多内容。
Eul 是一款 SwiftUI & Combine 教程 App(iOS、macOS),以文章(文字、图片、代码)配合真机示例(Xcode 12+、iOS 14+,macOS 11+)的形式呈现给读者。笔者意在尽可能使用简洁明了的语言阐述 SwiftUI & Combine 相关的知识,使读者能快速掌握并在 iOS 开发中实践。
概览
Swift Package Manager(SPM)是 Xcode 内置的包管理工具,支持远程公/私有库和本地库。
创建 Package Manager
创建方法
两种方法:
- 在 Xcode 菜单栏依次选中 File > New > Package Manager
- 在目标文件夹中使用命令:
Swift package init
创建完成后,在 Sources 文件下添加代码,然后按 cmd + B 编译。如果发现编译器报错,是因为测试代码有误。如果我们不需要编写测试代码,注释即可。
目录结构
如下是一个 Package 的目录结构:
.├── Package.swift // 配置文件├── README.md // 包的功能、使用说明├── Sources // 源码目录│ └── Biu│ └── Print.swift└── Tests // 测试文件目录 ├── BiuTests │ ├── BiuTests.swift │ └── XCTestManifests.swift └── LinuxMain.swift
Package.swift 包含如下内容:
// swift-tools-version:5.3// The swift-tools-version declares the minimum version of Swift required to build this package.import PackageDescriptionlet package = Package( // 包名 name: "Biu", // 包对外提供的 products(库、可执行文件) products: [ .library( name: "Biu", targets: ["Biu"]), ], // 依赖的其它包 dependencies: [ // .package(url: /* package url */, from: "1.0.0"), ], // 包含的 targets targets: [ // 每个 target 所需依赖 .target( name: "Biu", dependencies: []), .testTarget( name: "BiuTests", dependencies: ["Biu"]), ])
本地添加和测试 Package
- 新建一个 Biu_test 工程,直接将 Biu 目录拖入工程
- General -> Frameworks, Libraries, and Embedded Content 下添加 Package
- 导入 Package(
import Biu
)即可
注:如遇到无法导入或找不到 Package 的问题,可尝试退出工程或重启 Xcode 解决 🤷♂️
发布与更新 Package
可以使用 Git 命令,也可以使用 Xcode 内置的版本控制工具。
初次发布时,初始化 Package 为 Git 仓库,打上 Tag,再推送至远程仓库。
更新 Package 后,打上新的 Tag,Push 即可。
使用 Package
添加
我们先移除上文中的工程 Biu_test 引入的本地 Package(Biu),然后在 Xcode 中选择 File > Swift Packages > Add Package Dependency...,输入 Package 地址(https://github.com/keisme/Biu),点击 Next 安装。
安装完成后,重新运行项目,结果与预期一致。
更新
如果需要更新 Package,选择 File > Swfit Packages > Update to Latest Package Versionse。
移除
在工程中找到 Swift Package Manager,移除相应的 Package。
本文为 Eul 样章,如果您喜欢,请移步 AppStore/Eul 查看更多内容。
原文转载:http://www.shaoqun.com/a/744805.html
雨果网:https://www.ikjzd.com/w/1307
巴士物流:https://www.ikjzd.com/w/2329
本文为Eul样章,如果您喜欢,请移步AppStore/Eul查看更多内容。Eul是一款SwiftUI&Combine教程App(iOS、macOS),以文章(文字、图片、代码)配合真机示例(Xcode12+、iOS14+,macOS11+)的形式呈现给读者。笔者意在尽可能使用简洁明了的语言阐述SwiftUI&Combine相关的知识,使读者能快速掌握并在iOS开发中实践。概览Swi
mail.ru:https://www.ikjzd.com/w/2232
巴士物流:https://www.ikjzd.com/w/2329
ad公司:https://www.ikjzd.com/w/1332
赞助产品广告or赞助品牌广告?卖家"黑五"如何选才能稳流量,涨单量?:https://www.ikjzd.com/home/134841
亚马逊黄金日购物意愿降低?电子商务整体搜索量下降84%:https://www.ikjzd.com/home/132109
我在日她时,她使劲叫 性感保姆的诱惑使我彻底发狂:http://lady.shaoqun.com/a/274469.html
没有评论:
发表评论