Начало встраивания в клиентские приложения
Существует несколько вариантов встраивания Рутокенов в клиентские Android-приложения.
Если вы используете систему сборки Gradle, то добавьте следующие строки в файл build.gradle:
android { defaultConfig { ndk { abiFilters "armeabi-v7a", "arm64-v8a" } } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar']) }
Если ваше приложение будет работать с Рутокенами через PKCS#11, то:
- Добавьте в проект библиотеку из Рутокен SDK. Библиотека находится в папке
<sdk>/mobile/android/pkcs11
.
Положите библиотеку librtpkcs11ecp.so в папки<project_root>/app/src/main/jniLibs/armeabi-v7a
и<project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур. Добавьте в проект модуль-обертку PKSC#11 для Java: ru.rutoken:pkcs11jna:<version>@jar, где <Version> — версия библиотеки.
Актуальную версию библиотеки можно посмотреть здесь.
Также вам понадобится зависимость: net.java.dev.jna:jna:<Version>@aar.
Её актуальную версию можно посмотреть здесь.Пример добавленных зависимостей (для Gradle)dependencies { implementation 'ru.rutoken:pkcs11jna:3.3.0@jar' implementation 'net.java.dev.jna:jna:5.11.0@aar' }
Встраивание с использованием rtserviceconnection.aar
Данный вариант встраивания совместим со всеми версиями Android, начиная с 5.0, однако версия targetSdk вашего приложения не должна превышать 30.
Необходимая функциональность поддерживается начиная с Панели управления Рутокен версии 1.2.6.
ВАЖНО
Версии rtserviceconnection.aar ниже 1.1.0 несовместимы с Панелью Управления Рутокен версии 1.9.0 и новее.
- Установите Панель управления Рутокен версию 1.2.6 или новее из Google Play.
- Добавьте в проект библиотеку из Рутокен SDK. Библиотека находится в папке
<sdk>/mobile/android/pcsc
. Положите библиотеку librtpcsc.so в папки<project_root>/app/src/main/jniLibs/armeabi-v7a
и<project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур. - Добавьте в проект AAR модуль из Рутокен SDK: rtserviceconnection-<Version>.aar, где <Version> — версия библиотеки.
Модуль находится в папке<sdk>/mobile/android/libs
.
Положите rtserviceconnection-<Version>.aar в папку<project_root>/app/libs
. - Пересоберите приложение.
Встраивание без дополнительного AAR модуля
Данный вариант встраивания совместим только с версиями Android, начиная с 5.0 и заканчивая 8.1; версия targetSdk вашего приложения не должна превышать 27
Данная схема работает с librtpcsc.so из SDK версии 040522 и ниже.
- Установите Панель управления Рутокен из Google Play.
- Добавьте в проект библиотеку из Рутокен SDK.
Библиотека находится в папке<sdk>/mobile/android/pcsc
.
Положите библиотеку librtpcsc.so в папки<project_root>/app/src/main/jniLibs/armeabi-v7a
и<project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур. - Пересоберите приложение.