Существует несколько вариантов встраивания Рутокенов в клиентские Android-приложения.
Если вы используете систему сборки Gradle, то добавьте следующие строки в файл build.gradle:
android { defaultConfig { ndk { abiFilters "armeabi-v7a", "arm64-v8a" } } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar']) } |
Если ваше приложение будет работать с Рутокенами через PKCS#11, то:
<sdk>/mobile/android/pkcs11
. <project_root>/app/src/main/jniLibs/armeabi-v7a
и <project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур.<project_root>/app/libs.
Схема потребуется, когда targetSdk в вашем приложении станет уровня Android 12 или выше и вы используете Панели управления Рутокен 1.9.0 или новее |
Необходимая функциональность поддерживается начиная с версии Панели управления Рутокен 1.9.0 и новее. |
Данный вариант встраивания совместим со всеми версиями Android, начиная с 5.0, и со всеми версиями targetSdk вашего приложения, начиная с 21.
Потребуется обязательный вызов Java метода RtPcsc.setAppContext(context) из модуля rtpcsc-<Version>.aar и передать в него Android контекст вашего приложения до начала работы с устройствами Рутокен. Наиболее подходящим местом для данного вызова будет метод Application::onCreate. Без этого вызова работа с Рутокенами будет невозможна. Пример такого вызова можно увидеть в проекте Рутокен Демосмена. Если приложение многопроцессное, то этот метод нужно вызвать в каждом процессе, где будет работа с устройствами Рутокен. Иначе в рамках процесса не получится работать с токенами или смарт-картами. Нельзя работать с библиотекой PKCS#11 из главного потока приложения. |
<sdk>/mobile/android/pcsc
. Положите rtpcsc-<Version>.aar в папку <project_root>/app/libs.
Данный вариант встраивания совместим со всеми версиями Android, начиная с 5.0, однако версия targetSdk вашего приложения не должна превышать 30. |
Необходимая функциональность поддерживается начиная с Панели управления Рутокен версии 1.2.6.
Версии rtserviceconnection.aar ниже 1.1.0 несовместимы с Панелью Управления Рутокен версии 1.9.0 и новее. |
<sdk>/mobile/android/pcsc
. Положите библиотеку librtpcsc.so в папки <project_root>/app/src/main/jniLibs/armeabi-v7a
и <project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур.<sdk>/mobile/android/libs
. <project_root>/app/libs
.Данный вариант встраивания совместим только с версиями Android, начиная с 5.0 и заканчивая 8.1; версия targetSdk вашего приложения не должна превышать 27 |
Данная схема работает с librtpcsc.so из SDK версии 040522 и ниже.
<sdk>/mobile/android/pcsc
. <project_root>/app/src/main/jniLibs/armeabi-v7a
и <project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур.