Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Начало встраивания в клиентские приложения

Существует несколько вариантов встраивания Рутокенов в клиентские Android-приложения.

Если вы используете систему сборки Gradle, то добавьте следующие строки в файл build.gradle:

android {
    defaultConfig {
        ndk {
            abiFilters "armeabi-v7a", "arm64-v8a"
        }
    }
}
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
} 

Если ваше приложение будет работать с Рутокенами через PKCS#11, то:

  1. Добавьте в проект библиотеку из Рутокен SDK. Библиотека находится в папке <sdk>/mobile/android/pkcs11.
    Положите библиотеку librtpkcs11ecp.so в папки <project_root>/app/src/main/jniLibs/armeabi-v7a и <project_root>/app/src/main/jniLibs/arm64-v8a для соответствующих архитектур.

  2. Добавьте в проект модуль-обертку PKSC#11 для Java из Рутокен SDK: pkcs11jna-<Version>.jar, где <Version> — версия библиотеки.
    Модуль находится в папке
    <sdk>/java/samples/pkcs11/lib.
    Положите
    pkcs11jna-<Version>.jar в папку <project_root>/app/libs.

РЕКОМЕНДУЕТСЯ Встраивание с использованием rtpcsc.aar

Схема потребуется, когда targetSdk в вашем приложении станет уровня Android 12 или выше и вы используете Панели управления Рутокен 1.9.0 или новее, а также librtpkcs11ecp.so 2.4.2.0 и новее

Необходимая функциональность поддерживается начиная с версии Панели управления Рутокен 1.9.0 и новее.

Данный вариант встраивания совместим со всеми версиями Android, начиная с 5.0, и со всеми версиями targetSdk вашего приложения, начиная с 21.

ВАЖНЫЕ ОТЛИЧИЯ

1. Потребуется обязательный вызов Java метода RtPcsc.setAppContext(context) из модуля rtpcsc-<Version>.aar и передать в него Android контекст вашего приложения до начала работы с устройствами Рутокен.
Наиболее подходящим местом для данного вызова будет метод
Application::onCreate. Без этого вызова работа с Рутокенами будет невозможна. Пример такого вызова можно увидеть в проекте Рутокен Демосмена.

2. Если приложение многопроцессное, то этот метод нужно вызвать в каждом процессе, где будет работа с устройствами Рутокен. Иначе в рамках процесса не получится работать с токенами или смарт-картами. 

3. Нельзя работать с библиотекой PKCS#11 из главного потока приложения. 

  1. Установите последнюю версию (1.9.0 или новее) Панели управления Рутокен из Google Play.
  2. Добавьте в проект AAR модуль из Рутокен SDK: rtpcsc-<Version>.aar, где <Version> — версия библиотеки.
    Модуль находится в папке
    <sdk>/mobile/android/pcsc. Положите rtpcsc-<Version>.aar в папку <project_root>/app/libs.
  3. Пересоберите приложение.

Встраивание с использованием rtserviceconnection.aar

Данный вариант встраивания совместим со всеми версиями Android, начиная с 5.0, однако версия targetSdk вашего приложения не должна превышать 30.

Необходимая функциональность поддерживается начиная с Панели управления Рутокен версии 1.2.6.

ВАЖНО

Версии rtserviceconnection.aar ниже 1.1.0 несовместимы с Панелью Управления Рутокен версии 1.9.0 и новее.

  1. Установите Панели управления Рутокен версию 1.2.6 или новее из Google Play.
  2. Добавьте в проект библиотеку из Рутокен SDK. Библиотека находится в папке <sdk>/mobile/android/pcsc. Положите библиотеку librtpcsc.so в папки <project_root>/app/src/main/jniLibs/armeabi-v7a и <project_root>/app/src/main/jniLibs/arm64-v8a для соответствующих архитектур.
  3. Добавьте в проект AAR модуль из Рутокен SDK: rtserviceconnection-<Version>.aar, где <Version> — версия библиотеки.
    Модуль находится в папке
    <sdk>/mobile/android/libs.
    Положите
    rtserviceconnection-<Version>.aar в папку <project_root>/app/libs.
  4. Пересоберите приложение.

Встраивание без дополнительного AAR модуля

Данный вариант встраивания совместим только с версиями Android, начиная с 5.0 и заканчивая 8.1; версия targetSdk вашего приложения не должна превышать 27

 Данная схема работает с librtpcsc.so из SDK версии 040522 и ниже.

  1. Установите Панель управления Рутокен из Google Play.
  2. Добавьте в проект библиотеку из Рутокен SDK
    Библиотека находится в папке
    <sdk>/mobile/android/pcsc.
    Положите библиотеку
    librtpcsc.so в папки <project_root>/app/src/main/jniLibs/armeabi-v7a и <project_root>/app/src/main/jniLibs/arm64-v8a для соответствующих архитектур.
  3. Пересоберите приложение.
  • No labels