Expand | ||
---|---|---|
| ||
|
Общая информация
Эта статья описывает интеграцию устройств Рутокен в мобильные приложения для платформы Android с использованием приложения "Панель управления Рутокен".
Начало встраивания в клиентские приложения
Существует несколько вариантов встраивания Рутокенов в клиентские Android-приложения.
...
- Добавьте в проект библиотекуиз Рутокен 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
из Рутокен SDK: ru.rutoken:pkcs11jna
-<Version>.jar:<version>@jar, где <Version> — версия библиотеки
.
Модуль находится в папке.
Актуальную версии библиотеки можно посмотреть здесь.
Также вам понадобится зависимость: net.java.dev.jna:jna:<Version>@aar.
Её актуальную версию можно посмотреть здесь.
<sdk>/java/samples/pkcs11/lib.Code Block title Пример добавленных зависимостей (для Gradle) dependencies { implementation 'ru.rutoken:pkcs11jna:3.3.0@jar' implementation 'net.java.dev.jna:jna:5.11.0@aar' }
Положите pkcs11jna-<Version>.jar в папку<project_root>/app/libs.
Anchor android12 android12
android12 | |
android12 |
...
Status colour Green title РЕКОМЕНДУЕТСЯ
Встраивание с использованием rtpcsc.aar
colour | Green |
---|---|
title | РЕКОМЕНДУЕТСЯ |
Tip |
---|
Схема потребуется, когда targetSdk в вашем приложении станет уровня Android 12 или выше и вы используете Панели управления Рутокен 1.9.0 или новее |
Note |
---|
Необходимая функциональность поддерживается начиная с версии версии Панели управления Рутокен 1.910.0 и новее, а также librtpkcs11ecp.so 2.4.2.0 и новее |
Данный вариант встраивания совместим со всеми
...
версиями Android, начиная с 5.0, и со всеми
...
версиями targetSdk вашего приложения, начиная
...
с 21.
Warning | |||
---|---|---|---|
| |||
1. Ваше бизнес-приложение зависит только от библиотек rtpcsc.aar и, по необходимости от librtpkcs11ecp.so. Библиотека rtpcsc.aar заменяет rtserviceconnection.aar, а также содержит в себе librtpcsc.so для архитектур armv7 и arm64. 2. Потребуется 1. Потребуется обязательный вызов Java метода RtPcsc.setAppContext(context) из модуля из модуля rtpcsc-<Version>.aar и передать в него Android контекст вашего приложения приложения до начала работы с устройствами Рутокен. 23. Если приложение многопроцессное, то этот метод нужно вызвать в каждом процессе, где будет работа с устройствами Рутокен. Иначе в рамках процесса не получится работать с токенами или смарт-картами. 34. Нельзя работать с библиотекой PKCS#11 из главного потока приложения. |
- Установите последнюю версию (1.
...
- 10.0 или новее) Панели управления Рутокен
...
- из Google Play.
- Добавьте в проект AAR модуль из Рутокен SDK: rtpcsc-<Version>.aar,
...
- где <Version>
...
- — версия библиотеки.
Модуль находится в
...
- папке
<sdk>/mobile/android/pcsc
.
...
- Положите rtpcsc-<Version>.aar
...
- в папку
<project_root>/app/libs.
- Пересоберите приложение.
Встраивание с использованием rtserviceconnection.aar
Note |
---|
Данный вариант встраивания совместим со всеми версиями Android, начиная с 5.0, однако версия targetSdk вашего приложения не должна превышать 30. |
Необходимая функциональность поддерживается начиная с Панели управления Рутокен (Google Play, RuStore) версии 1.2.6.
...
...
Версии rtserviceconnection.aar ниже 1.1.0 несовместимы с Панелью Управления Рутокен версии 1.9.0 и новее.
- Установите Панели управления Рутокен версию 1Установите Панель управления Рутокен версии 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 модуля
Note |
---|
Данный вариант встраивания совместим только с версиями Android, начиная с 5.0 и заканчивая 8.1; версия targetSdk вашего приложения не должна превышать 27 |
Данная схема работает с librtpcsc.so из SDK версии 040522 и ниже.
- Установите Панель управления Рутокен из (Google Play, RuStore) .
- Добавьте в проект библиотеку из Рутокен SDK.
Библиотека находится в папке<sdk>/mobile/android/pcsc
.
Положите библиотеку librtpcsc.so в папки<project_root>/app/src/main/jniLibs/armeabi-v7a
и<project_root>/app/src/main/jniLibs/arm64-v8a
для соответствующих архитектур. - Пересоберите приложение.