> For the complete documentation index, see [llms.txt](https://doc.ozforensics.com/oz-knowledge-ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.ozforensics.com/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/instrukcii-po-migracii/perekhod-s-analiza-na-ustroistve-gibridnogo-analiza.md).

# Переход с анализа на устройстве / гибридного анализа

С 1 января 2027 года режим анализа на устройстве и гибридный режим в Oz Mobile SDK станут недоступными. Если вы используете любой из них, перейдите на анализ на сервере: подключите SDK к Oz API и смените режим анализа.

| SDK         | Что заменить                                      | Замена                       |
| ----------- | ------------------------------------------------- | ---------------------------- |
| Android SDK | `Analysis.Mode.ON_DEVICE`, `Analysis.Mode.HYBRID` | `Analysis.Mode.SERVER_BASED` |
| iOS SDK     | `.onDevice`, `.hybrid`                            | `.serverBased`               |
| Flutter SDK | `Mode.onDevice`, `Mode.hybrid`                    | `Mode.serverBased`           |

{% stepper %}
{% step %}

## Получите доступ к Oz API

Анализы на сервере выполняет Oz API. Вы можете использовать его [как сервис (SaaS) или установить в своей инфраструктуре (on-premise)](/oz-knowledge-ru/obshaya-informaciya/opisanie-sistemy-oz-forensics/modeli-ispolzovaniya-saas-lokalnaya-ustanovka-i-analiz-na-ustroistve.md). Чтобы получить адрес API и учетные данные, обратитесь к вашему аккаунт-менеджеру Oz Forensics.
{% endstep %}

{% step %}

## Подключите SDK к Oz API

Укажите адрес API и токен доступа, как показано ниже. Подробности и другие способы подключения описаны в статье «Подключение к API» для [Android](/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/sdk/oz-mobile-sdk/android/podklyuchenie-k-api.md) и [iOS](/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/sdk/oz-mobile-sdk/ios/podklyuchenie-k-api.md), а для Flutter — в статье [Установка и использование плагина для Flutter](/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/sdk/oz-mobile-sdk/flutter/ustanovka-i-ispolzovanie-plagina-dlya-flutter.md).

{% tabs %}
{% tab title="Android" %}

```kotlin
OzLivenessSDK.setApiConnection(OzConnection.fromServiceToken(host, token, sslPins))
```

{% endtab %}

{% tab title="iOS" %}

```swift
OZSDK.setApiConnection(Connection.fromServiceToken(host: "https://<link>.ozforensics.com", token: token, sslPins: pins)) { (token, error) in
}
```

{% endtab %}

{% tab title="Flutter" %}

```dart
await OZSDK.setApiConnectionWithToken(token, host);
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
Мы рекомендуем устанавливать подключение к API на экране, предшествующем проверке Liveness, а не при запуске приложения: после установки адреса API выполняется служебный вызов API.
{% endhint %}
{% endstep %}

{% step %}

## Смените режим анализа

Замените режим анализа на устройстве или гибридный режим на режим анализа на сервере во всех запускаемых анализах — как Liveness (`QUALITY`), так и Biometry (Face Matching).

{% tabs %}
{% tab title="Android" %}

```kotlin
analysisCancelable = AnalysisRequest.Builder()
    .addAnalysis(Analysis(Analysis.Type.QUALITY, Analysis.Mode.SERVER_BASED, mediaToAnalyze)) // было ON_DEVICE или HYBRID
    .build()
    .run(/* ваш AnalysisListener */)
```

{% endtab %}

{% tab title="iOS" %}

```swift
let analysis = Analysis.init(media: mediaToAnalyze, type: .quality)
```

{% endtab %}

{% tab title="Flutter" %}

```dart
List<Analysis> analysis = [ Analysis(Type.quality, Mode.serverBased, <media>, {}), ]; // было Mode.onDevice или Mode.hybrid
```

{% endtab %}
{% endtabs %}

Остальной код — съемка медиафайлов и обработка результатов — не меняется. Подробнее — в статье «Выполнение проверок» для [Android](/oz-knowledge-ru/other/old-docs/mobile-sdk/android/vypolnenie-proverok.md) и [iOS](/oz-knowledge-ru/other/old-docs/mobile-sdk/ios/vypolnenie-proverok.md).
{% endstep %}

{% step %}

## Перейдите на версию SDK для анализа на сервере

Полная версия SDK содержит модуль анализа на устройстве и имеет больший размер. Если вы больше не используете анализ на устройстве, можно перейти на версию для анализа на сервере, чтобы уменьшить размер приложения:

* **Android**: замените `com.ozforensics.liveness:full:VERSION` на `com.ozforensics.liveness:sdk:VERSION`.
* **iOS, CocoaPods**: замените `pod 'OZLivenessSDK'` на `pod 'OZLivenessSDK/Core'`.
* **iOS, SPM**: удалите библиотеку **OZLivenessSDKOnDeviceResources**.
* **iOS, ручная установка**: удалите **SDKOnDeviceResources.xcframework**.

Подробнее — в статьях по добавлению SDK в проект для [Android](/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/sdk/oz-mobile-sdk/android/dobavlenie-sdk-v-proekt.md) и [iOS](/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/sdk/oz-mobile-sdk/ios/dobavlenie-sdk-v-prilozhenie.md).
{% endstep %}
{% endstepper %}

## Если вы использовали гибридный режим

В гибридном режиме SDK отправлял медиафайлы на сервер, только если результат анализа на устройстве был неоднозначным. При анализе на сервере в Oz API отправляется каждая проверка.

Поле `sizeReductionStrategy` относится только к гибридному анализу, поэтому его можно удалить из кода.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://doc.ozforensics.com/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/instrukcii-po-migracii/perekhod-s-analiza-na-ustroistve-gibridnogo-analiza.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
