Класс CryptoProDSS
Класс основных настроек SDK.
Инициализация SDK и биоДСЧ, проверка целостности
Метод isInitialized
Проверяет статус инициализации КриптоПро Ключ SDK.
fun isInitialized(): Boolean
Возвращаемые значения:
- true - SDK инициализирован;
- false - SDK не инициализирован.
Метод isInitializedBioRng
Проверяет статус инициализации биологического датчика случайных чисел (биоДСЧ).
fun isInitializedBioRng(): Boolean
Возвращаемые значения:
- true - биоДСЧ инициализирован;
- false - биоДСЧ не инициализирован.
Метод initBioRng
Инициализирует биоДСЧ.
fun initBioRng(context: Context, simpleLambda: SdkResultCallback<Unit>)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| simpleLambda | SdkResultCallback<Boolean> | Интерфейс обратного вызова |
Метод init
Инициализирует КриптоПро Ключ SDK. Перед вызовом метода рекомендуется проверять флаг isInitialized.
fun init(context: Context, sdkInitCallback: SdkCryptoProDssInitCallback)
Параметры:
| Поле | Тип | Описание |
|---|---|---|
| sdkInitCallback | SdkCryptoProDssInitCallback | Интерфейс обратного вызова |
Возвращаемые значения:
- initOk — инициализация прошла успешно.
- initCertNotInstalled — не удалось установить сертификаты в процессе инициализации.
- initLockScreenNotInstalled — экран блокировки не установлен.
- initDeviceRooted — устройство работает с правами суперпользователя.
- initDeviceHasSpyPrograms - на устройстве установлены подозрительные приложения.
- initCspNotInitialized - ошибка инициализации криптопровайдера.
- initRootCertNotInitializedWrongHash - не удалось проверить целостность списка корневых сертификатов.
- initRootCertNotInitializedWrongSign - неверная подпись списка корневых сертификатов.
- initRootCertNotInitializedWrongASNTag - неверный формат списка корневых сертификатов.
Примечание
Метод инициализирует SDK и выполняет проверку условий использования SDK. Если метод определит, что SDK использовать небезопасно на данном устройстве, то будет отображен экран с соответствующим предупреждением. На данном экране пользователь может разрешить или запретить использование SDK.
Примечание
Следующие методы инициализации SDK являются устаревшими и не должны использоваться:
init(@NonNull Context activity, @Nullable HashMap<String, String[]> trustedApps, @NonNull final SdkInitCallback sdkInitCallback),init(@NonNull Context context, @NonNull final SdkCryptoProDssInitCallback sdkInitCallback).
Метод init с возможностью передачи скачанного списка корневых сертификатов
Инициализирует КриптоПро Ключ SDK. Отличается от предыдущего возможностью приложить заранее полученный подписанный список корневых сертификатов. Перед вызовом метода рекомендуется проверять флаг isInitialized.
fun init(
context: Context,
cmsSignature: Array<Byte>,
sdkInitCallback: SdkCryptoProDssInitCallback
)
Параметры:
| Поле | Тип | Описание |
|---|---|---|
| sdkInitCallback | SdkCryptoProDssInitCallback | Интерфейс обратного вызова |
| cmsSignature | Array<Byte> | Файл со списком корневых сертификатов |
Возвращаемые значения:
- initOk — инициализация прошла успешно.
- initCertNotInstalled — не удалось установить сертификаты в процессе инициализации.
- initLockScreenNotInstalled — экран блокировки не установлен.
- initDeviceRooted — устройство работает с правами суперпользователя.
- initDeviceHasSpyPrograms - на устройстве установлены подозрительные приложения.
- initCspNotInitialized - ошибка инициализации криптопровайдера.
- initRootCertNotInitializedWrongHash - не удалось проверить целостность списка корневых сертификатов.
- initRootCertNotInitializedWrongSign - неверная подпись списка корневых сертификатов.
- initRootCertNotInitializedWrongASNTag - неверный формат списка корневых сертификатов.
Примечание
Метод инициализирует SDK и выполняет проверку условий использования SDK. Если метод определит, что SDK использовать небезопасно на данном устройстве, то будет отображен экран с соответствующим предупреждением. На данном экране пользователь может разрешить или запретить использование SDK.
Примечание
Следующие методы инициализации SDK являются устаревшими и не должны использоваться:
init(@NonNull Context activity, @Nullable HashMap<String, String[]> trustedApps, @NonNull final SdkInitCallback sdkInitCallback),init(@NonNull Context context, @NonNull final SdkCryptoProDssInitCallback sdkInitCallback).
Метод checkIntegrity
Метод проверки целостности.
fun checkIntegrity(callback: SdkCryptoProDssCheckIntegrityCallback)
Возвращаемые значения:
- 0 - успех,
- 1 - ошибка.
Метод ignoreBioRng (тестовое использование)
Метод игнорирования инициализации биоДСЧ. Может быть использован исключительно в тестовых целях.
fun ignoreBioRng(context: Context)
Работа с внешними носителями
Метод isNeedCashTokenPin
Метод позволяет включить кэширование пин-кода внешнего носителя в рамках одной сессии.
fun isNeedCashTokenPin(context: Context, value: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| value | Boolean | Флаг, указывающий на необходимость кэширования пин-кода |
Метод setKeyTokenType
Метод позволяет сменить тип поддерживаемых внешних носителей. Метод необходимо вызывать перед методом init.
fun setKeyTokenType(context: Context, keyTokenType: KeyTokenType)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| keyTokenType | KeyTokenType | Тип поддерживаемых внешних носителей |
Метод getKeyTokenType
Метод позволяет получить тип поддерживаемых внешних носителей.
fun getTokenType(): KeyTokenType
Возвращаемые параметры:
| Параметр | Тип | Описание |
|---|---|---|
| keyTokenType | KeyTokenType | Тип поддерживаемых внешних носителей |
Метод setKeyCarrierTypeNotification
Разрешение добавления в запрос сертификат типа ключевого носителя (метод используется для обратной совместимости).
fun setKeyCarrierTypeNotification(context: Context, isEnable: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| isEnable | boolean | Флаг, указывающий на добавление в запрос сертификат типа ключевого носителя |
Прочее
Метод sdkVersion
Возвращает текущую версию КриптоПро Ключ SDK в виде строки.
fun sdkVersion(): String
Метод setCustomLocale
Установка языка SDK (поддерживается русский и английский).
fun setCustomLocale(customLocale: CustomLocale, context: Context): Boolean
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| customLocale | CustomLocale | Язык приложения. Возможные значения: ru или en |
Метод setDssKidMainTheme
Выбор темы SDK. При переданном значении null будет использована тема по умолчанию.
fun setDssKidMainTheme(dssKidMainTheme: DssKidMainTheme?)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| dssKidMainTheme | DssKidMainTheme | Основная тема SDK |
Метод getDssKidMainTheme
Возвращает выбранную тему SDK. Если тема не была выбрана пользователем, будет использована тема по умолчанию.
fun getDssKidMainTheme(): DssKidMainTheme
Метод setHttpAllTimeOut
Установка таймаутов взаимодействия с сервером. Значение по умолчанию для каждого из таймаутов - 100 секунд.
fun setHttpAllTimeOut(timeOutPerSeconds: HttpTimeOutModel)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| timeOutPerSeconds | HttpTimeOutModel | Структура с данными о таймаутах взаимодействия с сервером |
Метод getHttpTimeOutPerSeconds
Получение информации о таймауте взаимодействия с сервером.
fun getHttpTimeOutPerSeconds(): HttpTimeOutModel
Возвращаемые параметры:
| Параметр | Тип | Описание |
|---|---|---|
| httpTimeOutPerSeconds | HttpTimeOutModel | Структура с данными о таймаутах взаимодействия с сервером |
Метод setExternalLogger
Установка собственного логгера (средства журналирования) для получения сообщений от SDK.
fun setExternalLogger(externalLog: BaseSdkLog)
Метод disableDefaultLogger
Метод отключает использование логгера (средства журналирования) по умолчанию.
fun disableDefaultLogger()
Метод setTicketSavePath
Метод позволяет указать путь к директории сохранения тикетов (используется при подписи на распределенных ключах).
fun setTicketSavePath(ticketSavePath: String?)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| ticketSavePath | String | Путь к директории сохранения тикетов |
Метод getTicketSavePath
Метод позволяет получить текущий путь к директории сохранения тикетов (используется при подписи на распределенных ключах).
fun getTicketSavePath(): String?
Возвращаемые параметры:
| Параметр | Тип | Описание |
|---|---|---|
| ticketSavePath | String | Путь к директории сохранения тикетов |
Метод setScreenshotBlockingEnabled
Метод позволяет запретить возможность создания скриншотов и записи экрана для экранов SDK.
fun setScreenshotBlockingEnabled(context: Context, isEnabled: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| value | Boolean | Флаг, указывающий на запрет (true - запрещено, false - разрешено) |
Метод setForgotPasswordButtonVisibility
Настройка видимости кнопки "Забыли пароль" на экране ввода пароля.
fun setForgotPasswordButtonVisibility(context: Context, isVisible: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| isVisible | boolean | Флаг, указывающий на видимость кнопки "Забыли пароль" |
Метод setConfirmDocumentsSignedCheckBoxVisibility
Метод настраивает видимость чекбокса "Подтверждаю ознакомление с подписываемыми документами" перед подтверждением операции. Чекбокс должен отображаться при создании УКЭП.
fun setConfirmDocumentsSignedCheckBoxVisibility(context: Context, isVisible: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| isVisible | Boolean | Флаг, указывающий на видимость (true - показывать (по умолчанию), false - не показывать) |
Метод setDownloadDocIconVisible
Метод настраивает видимость иконки скачивания документа в окне подтверждения операции.
fun setDownloadDocIconVisible(context: Context, isVisible: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| isVisible | Boolean | Флаг, указывающий на видимость (true - показывать, false - не показывать) |
Метод isShowOpenGalleryBtn
Метод настраивает видимость кнопки "Выбрать из галереи" в окне сканирования QR-кода.
fun isShowOpenGalleryBtn(context: Context, value: Boolean)
Параметры:
| Параметр | Тип | Описание |
|---|---|---|
| value | Boolean | Флаг, указывающий на видимость (true - показывать (по умолчанию), false - не показывать) |