Risk iOS包
此包帮助收集与该包直接集成(独立)的商户设备及使用Checkout的Frames iOS包的用户的数据。
目录
要求
- iOS 12.0+
- Xcode 12.4+
- Swift 5.3+
文档
使用指南
- 将
Risk
作为包依赖项添加 - 请参阅安装指南,了解如何通过 SPM 或 Cocoapods 在您的 iOS 应用中添加我们的 SDK。 - 从Checkout仪表板获取公共 API 密钥。
- 使用
getInstance
方法初始化包,传入所需的配置(公共 API 密钥和环境),然后使用publishData
方法发布设备数据,如下例所示。
// Example usage of package
let yourConfig = RiskConfig(publicKey: "pk_qa_xxx", environment: RiskEnvironment.qa)
Risk.getInstance(config: yourConfig) { riskInstance in
riskInstance?.publishData() { response in
print(response.deviceSessionID)
}
}
公共 API
该包公开了两个方法
-
getInstance
- 这是一个返回唯一的 Risk 实例的方法。当调用此方法时,会进行预检查以获取 Checkout 的内部 API,用于初始化收集设备数据时使用的公共密钥,如果检查失败或商户被禁用,则返回 nil,否则,如果检查成功,则将Risk
实例返回给包的消费者,现在可以使用该实例使用publishData
方法发布数据。参数
public struct RiskConfig { public let publicKey: String public let environment: RiskEnvironment public let framesMode: Bool public init(publicKey: String, environment: RiskEnvironment, framesMode: Bool = false) { self.publicKey = publicKey self.environment = environment self.framesMode = framesMode } } public enum RiskEnvironment { case qa case sandbox case prod }
响应
public class Risk { ... public func publishData(...) ... { ... } }
-
publishData
- 用于发布和持久化设备数据。参数
public func publishData(cardToken: String? = nil, completion: @escaping (Result<PublishRiskData, RiskError>) -> Void) { ... }
响应
public struct PublishRiskData { public let deviceSessionID: String } public enum RiskError: Error, Equatable { case description(String) var localizedDescription: String { switch self { case .description(let errorMessage): return errorMessage } } }
附加资源
示例项目
我们的示例应用程序展示了我们的预构建 UI 以及我们的 SDK 的工作方式。您可以通过克隆存储库(直接通过 git 或使用建议的集成方法)本地运行该应用程序。
我们的演示应用程序也测试了支持的集成方法(SPM、Cocoapods),因此如果您在那里有任何问题,应该提供一个工作示例。您可以在存储库的根目录下找到它们,分别位于相应的文件夹中
- iOSExampleRiskCocoapods - (Cocoapods 发布)
- iOSExampleRiskSPM - (SPM 发布)
变更日志
在我们的 CHANGELOG.md 中找到 这里。
贡献
找到我们开始贡献的指南 在这里。
许可协议
Risk iOS 在MIT协议下发布。有关详细信息,请参阅LICENSE。