LogoLogo
Switch to EnglishНа сайт Oz ForensicsOz APIСвязаться с нами
  • Общая информация
    • Описание системы Oz Forensics
      • Архитектура Oz
      • Проверки Liveness, Face Matching, Black List
      • Oz API и Oz API Lite
      • Пассивный и активный Liveness
      • Гибридный Liveness
      • Ключевые понятия Oz API
      • Модели использования: SaaS, локальная установка и анализ на устройстве
      • Варианты лицензирования
    • Краткие руководства по интеграции
      • Проверка Liveness на сервере
        • Как интегрировать серверную проверку Liveness в ваше Web-приложение
        • Как интегрировать серверную проверку Liveness в ваше мобильное приложение
        • Как провести проверку медиафайла на Liveness без использования фронтенда Oz
      • Проверка Liveness на устройстве
        • Как интегрировать проверку Liveness на устройстве в ваше мобильное приложение
      • Сравнение лиц
        • Как сравнить лицо из снятого для проверки Liveness видео с лицом из вашей базы данных
        • Как добавить съемку документа и возможность сопоставления лиц в ваше веб- или мобильное приложение
  • Руководства
    • Руководство разработчика
      • API
        • Oz API
          • Как работать с системой: базовые сценарии
            • Аутентификация
            • Загрузка медиафайлов
            • Liveness
            • Биометрия
            • Поиск лучшего кадра
            • Проверка по черному списку
              • Работа с черным списком (коллекцией) в Oz API
            • Результаты анализов
            • Использование вебхуков для получения результатов
          • Объекты системы
          • Роли пользователей
          • Типы анализов и что они проверяют
          • Правила назначения анализов
          • Статусы API
          • Теги медиафайлов
          • Метаданные
          • Ошибки вызова сервиса
          • Коллекции Postman Oz API
          • Журнал изменений
        • Oz API Lite
          • Методы API Lite
          • Коллекция Postman Oz API Lite
          • Журнал изменений
      • SDK
        • Oz Mobile SDK (iOS, Android, Flutter)
          • Выполнение анализов на устройстве
          • Android
            • Получение лицензии
              • Мастер-лицензия для Android
            • Добавление SDK в проект
            • Подключение к API
            • Съемка видео
            • Выполнение проверок
            • Настройка Android SDK
              • Прежний дизайн
            • Локализация для Android: добавление или обновление языкового пакета
            • Методы и поля Android SDK
            • Журнал изменений
          • iOS
            • Получение лицензии
              • Мастер-лицензия для iOS
            • Добавление SDK в приложение
            • Подключение к API
            • Съемка видео
            • Выполнение проверок
            • Настройка iOS SDK
              • Прежний дизайн
            • Локализация для iOS: добавление или обновление языкового пакета
            • Методы и поля iOS SDK
            • Журнал изменений
          • Flutter
            • Установка и использование плагина для Flutter
            • Журнал изменений
        • Oz Liveness Web SDK
          • Web Plugin
            • Добавление плагина на web-страницу
            • Запуск плагина
              • Описание коллбэка on_complete
              • Описание коллбэка on_result
              • Съемка видео и описание коллбэка on_capture_complete
              • Описание коллбэка on_error
            • Скрытие и закрытие плагина
            • Локализация: добавление собственного языкового пакета
            • Настройка интерфейса
              • Настройка интерфейса до версии 1.0.1
            • Рекомендации по безопасности
            • Совместимость с браузерами
            • Лицензирование без использования сервера
          • Журнал изменений
    • Руководство администратора
      • Сервер лицензий
      • Конфигурация Web Adapter
        • Установка и лицензирование
        • Настройки файла конфигурации
        • Настройка Web Adapter через переменные окружения
        • Настройка сервера через переменные окружения
      • Конфигурация API
    • Руководство пользователя
      • Oz Web UI
        • Заявка на анализ
        • Пользователи и компании
        • Черный список
        • Статистика
        • Настройки
        • Журнал изменений
  • Дополнительная информация
    • Обновление ПО в соответствии с новыми требованиями регулятора в Казахстане
    • Требования к качеству медиафайлов
    • Какие проверки выполняют Oz SDK при съемке
    • Размеры медиафайлов, снятых Oz SDK
    • Совместимость
    • FAQ
    • Советы и рекомендации
      • Sudo без пароля
      • Соответствие жестов в компонентах Oz Liveness
      • Android: ошибка валидации сертификата
    • Прежняя версия документации
      • Mobile SDK
        • Android
          • Работа с серверным Oz API
          • Выполнение проверок
        • iOS
          • Выполнение проверок
      • Руководство пользователя
        • Демо-версия приложения Oz Forensics
        • Web UI
      • Мониторинг
      • Установка модулей Oz
        • Стационарный установщик
        • Oz System Lite
Powered by GitBook
On this page
  • Android
  • iOS

Was this helpful?

Export as PDF
  1. Общая информация
  2. Краткие руководства по интеграции
  3. Проверка Liveness на устройстве

Как интегрировать проверку Liveness на устройстве в ваше мобильное приложение

PreviousПроверка Liveness на устройствеNextСравнение лиц

Last updated 7 months ago

Was this helpful?

Из этой статьи вы узнаете, как интегрировать Oz Liveness Mobile SDK в клиентское мобильное приложение: для съемки видео с лицом и дальнейшей его проверки на устройстве без отправки данных на сервер.

Oz Liveness Mobile SDK – это:

  • Готовый интерфейс для съемки видео, который легко встроить в приложение клиента.

  • Высокое качество видео, которое обеспечивает точность проверки Liveness.

Для работы Oz Liveness Mobile SDK нужна лицензия, которая привязывается к bundle_id приложения, например com.yourcompany.yourapp. Тестовую лицензию на месяц вы можете оформить самостоятельно , если вам требуется лицензия на более длительный срок – .

Android

1. Добавьте SDK в проект

В build.gradle проекта добавьте строки:

allprojects {
    repositories {
        maven { url "https://ozforensics.jfrog.io/artifactory/main" }
    }
}

В build.gradle модуля добавьте строки

dependencies {
    implementation 'com.ozforensics.liveness:full:<version>'
    // номер версии можно найти в журнале изменений для Android
}

2. Инициализируйте SDK

Переименуйте файл лицензии в forensics.license и поместите его в папку res/raw в вашем проекте.

OzLivenessSDK.init(
    context,
    listOf(LicenseSource.LicenseAssetId(R.raw.forensics))
)
OzLivenessSDK.INSTANCE.init(
        context,
        Collections.singletonList(new LicenseSource.LicenseAssetId(R.raw.forensics)),
        null
);

3. Запустите съемку видео

Для начала съемки используйте метод startActivityForResult:

val OZ_LIVENESS_REQUEST_CODE = 1
val intent = OzLivenessSDK.createStartIntent(listOf( OzAction.Blank)) startActivityForResult(intent, OZ_LIVENESS_REQUEST_CODE)
int OZ_LIVENESS_REQUEST_CODE = 1;
Intent intent = OzLivenessSDK.INSTANCE.createStartIntent(Collections.singletonList(OzAction.Blank));
startActivityForResult(intent, OZ_LIVENESS_REQUEST_CODE);

Для получения готового видео используйте метод onActivityResult:

override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
    super.onActivityResult(requestCode, resultCode, data)
        if (requestCode == OZ_LIVENESS_REQUEST_CODE) {
            val sdkMediaResult = OzLivenessSDK.getResultFromIntent(data)
            val sdkErrorString = OzLivenessSDK.getErrorFromIntent(data)
            if (!sdkMediaResult.isNullOrEmpty()) {
                analyzeMedia(sdkMediaResult)
            } else println(sdkErrorString)
        }
    }
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == OZ_LIVENESS_REQUEST_CODE) {
        List<OzAbstractMedia> sdkMediaResult = OzLivenessSDK.INSTANCE.getResultFromIntent(data);
        String sdkErrorString = OzLivenessSDK.INSTANCE.getErrorFromIntent(data);
        if (sdkMediaResult != null && !sdkMediaResult.isEmpty()) {
            analyzeMedia(sdkMediaResult);
        } else System.out.println(sdkErrorString);
    }
}

Готовые видео содержатся в объекте sdkMediaResult.

4. Запустите анализы

Для запуска анализов используйте код ниже. mediaList – массив объектов, полученных из sdkMediaResult или извне (если вы снимали видео без использования нашего SDK).

private fun analyzeMedia(mediaList: List<OzAbstractMedia>) {
    AnalysisRequest.Builder()
        .addAnalysis(Analysis(Analysis.Type.QUALITY, Analysis.Mode.ON_DEVICE, mediaList))
        .build()
        .run(object : AnalysisRequest.AnalysisListener {
            override fun onSuccess(result: List<OzAnalysisResult>) {
                result.forEach { 
                    println(it.resolution.name)
                    println(it.folderId)
                }
            }
            override fun onError(error: OzException) {
                error.printStackTrace()
            }
        })
} 
private void analyzeMedia(List<OzAbstractMedia> mediaList) {
    new AnalysisRequest.Builder()
            .addAnalysis(new Analysis(Analysis.Type.QUALITY, Analysis.Mode.ON_DEVICE, mediaList, Collections.emptyMap()))
            .build()
            .run(new AnalysisRequest.AnalysisListener() {
                @Override public void onStatusChange(@NonNull AnalysisRequest.AnalysisStatus analysisStatus) {}
                @Override
                public void onSuccess(@NonNull List<OzAnalysisResult> list) {
                    for (OzAnalysisResult result: list) {
                        System.out.println(result.getResolution().name());
                        System.out.println(result.getFolderId());
                    }
                }
                @Override
                public void onError(@NonNull OzException e) { e.printStackTrace(); }
    });
}

iOS

1. Добавьте SDK в проект

pod 'OZLivenessSDK', :git => 'https://gitlab.com/oz-forensics/oz-liveness-ios', :tag => '<version>' // You can find the version needed in  iOS changelog

2. Инициализируйте SDK

Переименуйте файл лицензии в forensics.license и поместите его в проект.

OZSDK(licenseSources: [.licenseFileName("forensics.license")]) { licenseData, error in
    if let error = error {
        print(error.errorDescription)
    }
}

3. Запустите съемку видео

Создайте контроллер, который будет снимать видео:

let actions: [OZVerificationMovement] = [.selfie]
let ozLivenessVC: UIViewController = OZSDK.createVerificationVCWithDelegate(delegate, actions: actions) 
self.present(ozLivenessVC, animated: true)

В делегате используйте протокол OZLivenessDelegate:

let actions: [OZVerificationMovement] = [.selfie]
let ozLivenessVC: UIViewController = OZSDK.createVerificationVCWithDelegate(delegate, actions: actions) 
self.present(ozLivenessVC, animated: true)

4. Запустите анализы

Для запуска анализов используйте AnalysisRequestBuilder.

let analysisRequest = AnalysisRequestBuilder()
let analysis = Analysis.init(
media: mediaToAnalyze, 
type: .quality, 
mode: .onDevice)
analysisRequest.uploadMedia(mediaToAnalyze)
analysisRequest.addAnalysis(analysis)
analysisRequest.run(
scenarioStateHandler: { state in }, // обработчик шагов сценария
uploadProgressHandler: { (progress) in } // обработчик загрузки файлов
) { (analysisResults : [OzAnalysisResult], error) in 
    // получение и обработка результатов анализов
    for result in analysisResults {
        print(result.resolution)
        print(result.folderID)
    }
}

Шаги выше помогут вам в базовой интеграции наших мобильных SDK в ваше приложение. Данные анализов, выполненных в режиме «на устройстве» никуда не отправляются, поэтому, в отличие от данных серверных проверок, они не будут доступны через API или в веб-консоли. Однако обратите внимание: для проверки лицензии потребуется подключение к интернету. Мы также рекомендуем использовать наш сервис логирования – телеметрию. Записи телеметрии помогают в расследовании деталей атак. Необходимые учетные данные мы предоставим.

Установите OZLivenessSDK через . Чтобы встроить SDK в проект Xcode, в Podfile добавьте:

для Android

для iOS

Android

iOS

в PlayMarket

в TestFlight

на нашем веб-сайте
свяжитесь с нами
CocoaPods
Образец кода
Образец кода
Руководство разработчика
Руководство разработчика
Demo app
Demo app