Skip to content

Swift 安装与兼容性

qiuwenchen edited this page Apr 10, 2024 · 21 revisions

WCDB Swift 提供Swift Package Manager、Cocoapods、Carthage 和 源码 四种安装方式。

基本要求

  • Swift 5.0 及以上
  • C++ 14 及以上
  • Xcode 12.0 及以上
  • 系统要求
    • iOS 11.0 及以上
    • macOS 10.13 及以上
    • tvOS 12.4 及以上
    • watchOS 6.0 及以上

通过 Swift Package Manager 安装

打开自己的 Xcode 工程之后,点击右上角 File->Add Package Dependencies...,然后再按照下图的操作顺序,分别在右上角输入WCDB的Github地址,选择版本号,最后添加依赖。

WCDB 从 2.1.0版本开始支持 Swift Package Manager,以前的版本不支持。

SwiftPM-Example

上面点击Add Package之后会需要一点时间从 Github 上拉取 WCDB 的代码,拉完之后就会弹出下面这个界面,开发者可以选择依赖静态库或者动态库,推荐依赖动态库:

SwiftPM-Example2

通过 Cocoapods 安装

安装 Cocoapods 工具

可参考 Cocoapods 官方教程进行安装。

更新本地的 Cocoapods 缓存

在命令行中执行:

pod repo update

添加 Podfile 配置

在工程目录下创建 podfile 文件,并在对应 target 下添加 pod 'WCDB.swift'use_frameworks!。以下是一份示例 podfile 文件:

platform :ios, '13.0'
use_frameworks!

target 'Sample' do
    pod 'WCDB.swift'
end

然后在 podfile 同目录下命令行执行:

pod install --verbose

引入 WCDBSwift

在项目中使用 Cocoapods 生成的 .xcworkspace 文件打开工程,并在需要使用 WCDB Swift 的源代码文件头通过 import WCDBSwift 引入即可。

通过 Carthage 安装

安装 Carthage 工具

可参考 Carthage 官方教程进行安装。

添加 cartfile 配置

在工程目录下创建 cartfile 文件,并添加 github "Tencent/WCDB"。以下是一份示例 cartfile 文件:

github "Tencent/WCDB"

编译生成动态库

在工程目录命令行执行:

carthage update --use-xcframeworks

对于不需要 bitcode 的开发者,可以指定 --configuration WithoutBitcode,以降低二进制的包大小。

完成后可以在 Carthage/Build 目录下找到生成的对应 iOS 或 macOS 平台动态库 WCDBSwift.framework

链入动态库

打开工程,并将对应 iOS 或 macOS 平台的动态库,拖入工程设置的 General -> Frameworks, Libraries, and Embedded Content 中。

以下是一份 iOS 平台工程的配置示例:

carthage_sample

引入 WCDBSwift

在需要使用 WCDB Swift 的源代码文件头通过 import WCDBSwift 引入即可。

通过源码安装

获取 WCDB Swift 源码

WCDB Swift 包含了 sqlcipher 和 zstd 的子模块,因此也需对其进行更新。在命令行中执行:

git clone https://github.com/Tencent/wcdb.git
cd wcdb
git submodule update --init sqlcipher zstd

链入工程文件

wcdb/src 目录下的 WCDB.xcodeproj 拖入你的工程文件中,并在工程配置的 Build Phases -> Target Dependencies 中添加 WCDBSwift

链入动态库

Build Phases -> Link Binary With Librarires中添加WCDBSwift。再在 Build Phases 中,选择 + 选项,在弹出菜单中选择 New Copy Files Phase。然后将Destination设置为Frameworks,然后添加WCDBSwift

以下是一个完成链入的配置示例:

git_clone_sample

引入 WCDBSwift

在需要使用 WCDB Swift 的源代码文件头通过 import WCDBSwift 引入即可。

Clone this wiki locally