ClaySDK 1.11.1

ClaySDK 1.11.1

Jakov 维护。



ClaySDK 1.11.1

  • Jakov 和 Victor

ClaySDK

Carthage compatible CocoaPods compatible License: MIT

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