Swift 的 Supabase 客户端。镜像了 supabase-js 的设计。
重要提示
查看支持策略,了解何时放弃 Xcode、Swift 和平台版本将不被视为重大更改。
使用 Swift Package Manager 安装库。
let package = Package(
...
dependencies: [
...
.package(
url: "https://github.com/supabase/supabase-swift.git",
from: "2.0.0"
),
],
targets: [
.target(
name: "YourTargetName",
dependencies: [
.product(name: "Supabase", package: "supabase-swift") // Add as a dependency
]
)
]
)
如果您正在使用 Xcode,请使用本指南将 supabase-swift
添加到您的项目中。当 Xcode 询问时,请使用 https://github.com/supabase-community/supabase-swift.git
作为 URL。
如果您不需要完整的 Supabase 环境,您也可以添加单独的包,例如 Functions
、Auth
、Realtime
、Storage
或 PostgREST
。
然后您就可以导入包并建立与数据库的连接。
/// Create a single supabase client for interacting with your database
let client = SupabaseClient(supabaseURL: URL(string: "https://xyzcompany.supabase.co")!, supabaseKey: "public-anon-key")
let client = SupabaseClient(
supabaseURL: URL(string: "https://xyzcompany.supabase.co")!,
supabaseKey: "public-anon-key",
options: SupabaseClientOptions(
db: .init(
schema: "public"
),
auth: .init(
storage: MyCustomLocalStorage(),
flowType: .pkce
),
global: .init(
headers: ["x-my-custom-header": "my-app-name"],
session: URLSession.myCustomSession
)
)
)
本文档概述了 Supabase 中对 Xcode、Swift 和各种平台(iOS、macOS、tvOS、watchOS 和 visionOS)的支持范围。
我们仅支持当前符合向 App Store 提交应用条件的 Xcode 版本。一旦特定版本的 Xcode 不再受支持,从 Supabase 中移除该版本将不被视为重大更改,并且将在次要版本中进行。
最低支持的 Swift 版本对应于最旧支持的 Xcode 版本发布的次要版本。当 Swift 版本达到其支持终止日期时,它将从 Supabase 的次要版本中删除,并且这不会被视为重大更改。
我们保持对每个平台最新的四个主要版本的支持,包括当前版本。
当平台版本不再受支持时,Supabase 将在次要版本中删除它,并且这不会被视为重大更改。例如,在 iOS 18 发布后,将不再支持 iOS 14,从而允许在次要更新中删除它。
对于 macOS,此策略将命名的年度版本视为主要版本,无论其版本号如何。
重要提示
Linux 和 Windows 可以工作,但不受支持,并且可能在库的未来版本中停止工作。
我们正在使用企业级开源产品构建 Firebase 的功能。我们尽可能地支持现有的社区,如果产品不存在,我们就自己构建并开源。感谢这些赞助商,他们为每个人创造了更好的 OSS 生态系统。