CKey

class CKey(context: Context, certificate: CKey.RootCertificateType, logLevel: Int, onError: (error: Error) -> Unit, onCustomizationReady: () -> Unit, onSuccess: (myDssInstance: CKey) -> Unit)

Инициализация библиотеки. Работа с CKey SDK начинается с создания этого объекта (в главном потоке).

Инициализация включает:

  • Синхронизацию внутренних часов библиотеки

  • Инициализацию криптографических функций

  • Установку внешнего вида пользовательского интерфейса по умолчанию

  • Определение наличия прав суперпользователя (root) в устройстве

  • Определение наличия средств антивирусной защиты

  • Определение списка потенциально опасных приложений

Parameters

context

Контекст приложения. Используется для вызова стандартных функций Android SDK, требующих передачи контекста приложения в списке аргументов.

В качестве контекста может быть передан экземпляр Activity, тогда контекст приложения будет получен вызовом метода Activity.getApplicationContext.

При передаче Activity в качестве контекста экран с показом уведомлений о проблемах безопасности (если таковые имеются) будет запущен в той же задаче, что и переданный экземпляр Activity. При указании контекста приложения данный экран будет запущен как отдельная задача. Все остальные экраны SDK (регистрация, просмотр операции и т.д.) всегда запускаются отдельной задачей, если в соответствующие методы явно не передан экземпляр Activity.

certType

Режим запуска SDK и соответствующий ему набор корневых сертификатов

Предполагается, что RootCertificateType.Development используется на этапе разработки и тестирования приложений, в то время как RootCertificateType.Production применяется в приложениях для конечного пользователя.

Корневой сертификат "для разработки" должен быть доступен как ресурс приложения, идентифицируемый R.raw.development_root_cert, в то время как сертификат "для конечного пользователя" должен быть доступен через идентификатор R.raw.production_root_cert.

logLevel

Уровень логирования. Используйте CKey.LOG_DEBUG, чтобы разрешить логирование и CKey.NO_LOGGING, чтобы предотвратить запись в логи любых сообщений от CKey SDK. Исключить подробные логи (в том числе логирование ответов сервера) можно, задав уровень CKey.LOG_INFO.

trustedApps

Список "доверенных" приложений. Может быть пустым (null). Подробнее в разделе "Инициализация SDK со списком доверенных приложений" на странице Руководство по использованию CKey SDK

onError

При ошибке возвращает Error

onAppearanceReady

Вызывается, когда внешний вид экранов SDK предварительно настроен, возвращает объект Appearance

onSuccess

При успешной инициализации возвращается экземпляр инициализированной библиотеки CKey, который должен быть сохранён для дальнейшего использования в приложении. Библиотека не может быть инициализирована дважды.

See also

Constructors

Link copied to clipboard
constructor(context: Context, certificate: CKey.RootCertificateType, logLevel: Int, onError: (error: Error) -> Unit, onCustomizationReady: () -> Unit, onSuccess: (myDssInstance: CKey) -> Unit)

Properties

Link copied to clipboard

Текущие настройки внешнего вида SDK Appearance

Link copied to clipboard

Возвращает экземпляр ранее инициализированной SDK или null, если библиотека ещё не была инициализирована.

Link copied to clipboard

Текущие настройки внешнего вида SDK LayoutMapper

Link copied to clipboard

Возвращает версию CKey SDK

Functions

Link copied to clipboard
inline fun activate(kInit: QRCodeKinit, code: String, crossinline onError: (error: Error) -> Unit, crossinline onSuccess: (qrCodeKinit: QRCodeKinit) -> Unit)

Выполняет активацию ключа KInit

Link copied to clipboard
fun analyzeQR(qrValue: String): QRCode?

Определяет содержание заранее раскодированного QR-кода в виде строки.

Link copied to clipboard

Проверяет наличие root-прав на устройстве. Не проверяет, есть ли BusyBox

Link copied to clipboard

Проверяет, установлен ли на устройстве доверенный антивирус

Link copied to clipboard

Функция составляет список потенциально опасных приложений, включающих:
(1) Приложения с правами PACKAGE_USAGE_STATS и SYSTEM_ALERT_WINDOW (кроме системных)
(2) Приложения из чёрного списка

Link copied to clipboard
fun setAlternativeLogger(alternativeLogger: AlternativeLogger)

Задаёт альтернативный способ записи логов вместо использования android.util.Log.