ConfigCat 11.1.0

ConfigCat 11.1.0

ConfigCat维护。



ConfigCat 11.1.0

  • ConfigCat

ConfigCat Swift SDK

https://configcat.com

ConfigCat Swift SDK为您的应用提供与ConfigCat的简单集成。

ConfigCat是一个功能开关和配置管理服务,它使您可以将发布与部署分离。您可以使用ConfigCat仪表板在功能部署后将其ON/OFF。ConfigCat允许您根据地区、电子邮件或其他任何自定义用户属性针对特定用户组。

ConfigCat是一种托管功能开关服务。管理前端、后端、移动、桌面应用中的功能开关。替代方案LaunchDarkly。管理应用+功能开关SDK。

Build Status Coverage Status CocoaPods Carthage compatible Supported Platforms

入门

1. 安装包

CocoaPods

将以下内容添加到您的Podfile

target '<YOUR TARGET>' do
pod 'ConfigCat'
end

然后,运行以下命令安装您的依赖项

pod install

Carthage

将以下内容添加到您的Cartfile

github "configcat/swift-sdk"

然后,运行carthage update命令,然后按照Carthage集成步骤将框架链接到您的项目中。

Swift 包管理器

您可以通过将其作为包依赖项添加到 Xcode 项目中来将 ConfigCat 添加到 Xcode 项目中。

https://github.com/configcat/swift-sdk

如果您想在 SwiftPM 项目中使用 ConfigCat,只需在您的 Package.swift 文件中添加一个 dependencies 子句即可。

dependencies: [
  .package(url: "https://github.com/configcat/swift-sdk", from: "9.4.0")
]

2. 前往 ConfigCat 控制台 获取您的 SDK 密钥

SDK-KEY

3. 将 ConfigCat 模块导入您的应用程序

import ConfigCat

4. 创建 ConfigCat 客户端实例

let client = ConfigCatClient.get(sdkKey: "#YOUR-SDK-KEY#")

5. 获取您的设置值

client.getValue(for: "isMyAwesomeFeatureEnabled", defaultValue: false) { isMyAwesomeFeatureEnabled in
    if isMyAwesomeFeatureEnabled {
        doTheNewThing()
    } else {
        doTheOldThing()
    }
}

// or with async/await
let isMyAwesomeFeatureEnabled = await client.getValue(for: "isMyAwesomeFeatureEnabled", defaultValue: false)
if isMyAwesomeFeatureEnabled {
    doTheNewThing()
} else {
    doTheOldThing()
}

6. 在应用程序退出时关闭客户端

client.close();

通过定位获取用户特定的设置值

使用此功能,您可以通过将 用户对象 传递到 getValue() 函数中,在应用程序中获取不同用户的不同的设置值。

有关定位的更多信息,请参阅此处

let user = ConfigCatUser(identifier: "#USER-IDENTIFIER#")
client.getValue(for: "isMyAwesomeFeatureEnabled", defaultValue: false, user: user) { isMyAwesomeFeatureEnabled in
    if isMyAwesomeFeatureEnabled {
        doTheNewThing()
    } else {
        doTheOldThing()
    }
}

示例/演示应用程序

示例iOS应用程序

轮询模式

ConfigCat SDK 支持三种不同的轮询机制,以从 ConfigCat 获取设置值。在下载最新的设置值之后,它们被存储在内部缓存中,然后所有请求都从那里提供。有关轮询模式和如何使用它们的更多信息,请参阅ConfigCat 文档

敏感信息处理

前端的/移动 SDK 在用户的浏览器/设备上运行。SDK 从 ConfigCat 的 CDN 服务器下载一个 config.json 文件。此 config.json 文件的 URL 路径包含您的 SDK 密钥,因此 SDK 密钥以及您的 config.json 文件的内容(功能标志键、功能标志值、定位规则、% 规则)可能对用户可见。此 SDK 密钥为只读权限,它只允许下载您的 config.json 文件,但任何人都无法在您的 ConfigCat 账户中使用它进行任何更改。

如果您不想暴露SDK密钥或config.json文件的内容,我们建议仅在您的后端组件中使用SDK。您始终可以使用ConfigCat SDK创建一个后端端点,来评估特定用户的特性开关,然后从您的前端/移动应用程序调用该后端端点。

此外,我们建议在用于前端/移动SDK的特性开关的目标规则中使用机密目标比较器

需要帮助?

https://configcat.com/support

贡献

欢迎贡献。有关更多信息,请阅读贡献指南

关于ConfigCat