ClaySDK
由 Salto KS 创建。
版本 1.9.0 的重大变更
由于 Swift 模块接口(https://bugs.swift.org/browse/SR-14195)的 bug,我们不得不更改主公共类的名称。类名的更改从 ClaySDK 更改为 Clay。在之前,您有:
import ClaySDK
//...
let clay = ClaySDK(installationUID: "SOME_UNIQUE_ID", apiKey: "THE_API_PUBLIC_KEY", delegate: self)
这将更改为
import ClaySDK
//...
let clay = Clay(installationUID: "SOME_UNIQUE_ID", apiKey: "THE_API_PUBLIC_KEY", delegate: self)
如果您在这个变更中遇到问题,即新类名没有被 Xcode 清理项目检测到,请重新安装 pods 并重新启动 Xcode。
我们还更改了框架的格式类型。之前是 .framework 格式,现在我们采用了新的格式 .xcframework。启用了 Bitcode 的项目现在应该得到了支持。
简介
这个用于 iOS 的 SDK 包含了将移动密钥技术集成到您自己的 iOS 应用程序中最新的框架。它将设置与 Connect API 通信所需的安全功能,并使用 Connect API 返回的加密移动密钥解锁锁定。iOS SDK 包括 iOS 库、开发者文档和一个示例 Xcode 项目,以帮助您快速简单地启动和运行。
要求
- iOS 11+
除此之外,这些框架必须包含到目标项目中
- SaltoJustINMobileSDK.xcframework
- CoreBluetooth.framework
- Foundation.framework
- VirgilSDK
- VirgilCrypto
- VirgilCryptoFoundation
- VSCCommon
- VSCFoundation
安装
首先,您需要从Salto Systems获取JustInMobile iOS SDK的副本。一旦您有了这个副本,您就可以开始使用SDK了。
Virgil库可以在Virgil Security Objective-C/Swift SDK找到。
CocoaPods
CocoaPods 是Cocoa项目的一个依赖管理器。
要安装ClaySDK,只需将以下行添加到您的Podfile中。
pod 'ClaySDK', '~> 1.10'
用法
import ClaySDK
//...
//'self' must conform to ClayDelegate, the apiKey will be provided to you
let clay = ClaySDK(installationUID: "SOME_UNIQUE_ID", apiKey: "THE_API_PUBLIC_KEY", delegate: self)
//...
// Public key that you need to send via API to activate mobile key
let publicKey = clay.getPublicKey()
//...
//'yourOpenDoorDelegate' must conform to OpenDoorDelegate
clay.openDoor(with: "your-encrypted-key", delegate: yourOpenDoorDelegate)
在OpenDoorDelegate实现中可以处理ClayResult。
import SaltoJustINMobileSDK
//...
func didOpen(with result: ClayResult?) {
guard let result = result else { return }
// by using SSOperationGrup
let group = SSOpResult.getGroup(result.getOpResult())
switch group {
case .groupAccepted:
// key sucessfully sent to lock (we don't know if user have access, access is indicated by light of the lock)
break
case .groupFailure, .groupRejected, .groupUnknownResult:
// there was a problem with sending key to the lock
break
default:
break
}
}
作者
变更日志
请参阅CHANGELOG。