Класс SDKFramework
Класс основных настроек SDK.
Параметры класса
| Параметр | Тип | Описание |
|---|---|---|
| allowDownloadDocuments | Bool | Отображение кнопки скачивания печатной формы документа в операции |
| rngInitialized | Bool | Проверка инициализации биоДСЧ. Инициализировать биоДСЧ можно при помощи метода initRNG |
| sendKeyCarrierType | Bool | Передавать тип ключа подписи при отправке запроса или установке сертификата на сервер (для обратной совместимости) |
| showForgotButton | Bool | Показывать кнопку "Забыли пароль" на экранах ввода пароля (ПИН-кода) на ключ аутентификации |
| tokenSettings | TokenSettings | Параметры использования внешних носителей |
| timeOffset | TimeInterval | Разница между временем устройства и реальным в секундах |
Параметры использования внешних носителей
| Параметр | Тип | Описание |
|---|---|---|
| passwordCaching | Bool | Возможность кэширования пароля внешнего носителя на время работы приложения |
| quickSignRequest | Bool | Возможность работы с созданием ключевого контейнера на токене в одной сессии (получение имени ключевого контейнера и подпись запроса). Работа в две сессии (False) используется для обратной совместимости |
Методы класса
Метод _init
Инициализирует КриптоПро Ключ SDK.
public func _init(roots: Data? = nil) async -> CSPInitCode
Возвращаемые значения:
- result:
- init_ok — инициализация прошла успешно.
- init_certs_not_installed — не удалось установить сертификаты в процессе инициализации.
- init_lockScreen_not_installed — экран блокировки не установлен.
- init_device_rooted — устройство работает с правами суперпользователя.
Метод _init (асинхронный)
Инициализирует КриптоПро Ключ SDK.
public func _init() async -> CSPInitCode
Возвращаемые значения:
- result:
- init_ok — инициализация прошла успешно.
- init_certs_not_installed — не удалось установить сертификаты в процессе инициализации.
- init_lockScreen_not_installed — экран блокировки не установлен.
- init_device_rooted — устройство работает с правами суперпользователя.
Метод initRNG
Инициализация датчика случайных чисел. Требуется при
первом обращении к SDK. Впоследствии факт инициализации датчика
можно проверить при помощи параметра класса rngInitialized.
@discardableResult public func initRNG() -> Bool
Возвращаемые значения:
- true - ДСЧ инициализирован,
- false - ДСЧ не инициализирован.
Метод setLogger
Позволяет настроить журналирование SDK при помощи LogHandler.
public func setLogger(with logger: LogHandler?)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| logger | String | Объект, который соответствует протоколу LogHandler |
| nil | - | Отключение журналирования |
В случае если достаточно вывода журналирования в консоль, можно использовать реализованный в SDK LogHandler:
let consoleLogger = DSSStreamLogHandler.standardOutput(label: "New app")
SDKFramework.shared.setLogger(with: consoleLogger)
Метод setRequestTimeouts
Задает таймаут HTTP-запросов.
public func setRequestTimeouts(timeout: Int, connectionTimeout: Int)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| timeout | Int | Таймаут общего выполнения HTTP-запроса в секундах |
| connectionTimeout | Int | Таймаут этапа подключения в секундах |
Метод checkIntegrity
Выполняет регламентный контроль целостности мобильного приложения и SDK.
public func checkIntegrity() throws -> IntegrityCheckResult
Возвращаемые параметры:
| Параметр | Тип | Описание |
|---|---|---|
| IntegrityCheckResult | IntegrityCheckResult | Результат контроля целостности |