> 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/sdk/oz-mobile-sdk/android/nastroika-android-sdk.md).

# Настройка Android SDK

### Настройки Oz Mobile SDK

Применять настройки рекомендуется при старте приложения.

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

```kotlin
// подключение к серверу API
OzLivenessSDK.setApiConnection(OzConnection.fromServiceToken(HOST, TOKEN))
// настройка количества попыток обнаружить действие
OzLivenessSDK.config.attemptSettings = attemptSettings 
// возможность отображения дополнительной информации для отладки (чтобы увидеть данные, нажмите на номер версии SDK)
OzLivenessSDK.config.allowDebugVisualization = allowDebugVisualization 
// настройки журналирования
OzLivenessSDK.config.logging = ozLogging 
```

{% endtab %}

{% tab title="Java" %}

```java
OzConfig config = OzLivenessSDK.config();
// подключение к серверу API
OzLivenessSDK.setApiConnection(OzConnection.fromServiceToken(HOST, TOKEN));
// настройка количества попыток обнаружить действие
config.setAttemptSettings(attemptSettings); 
// возможность отображения дополнительной информации для отладки (чтобы увидеть данные, нажмите на номер версии SDK)
config.setAllowDebugVisualization(allowDebugVisualization); 
// настройки журналирования
config.setLogging(ozLogging);
```

{% endtab %}
{% endtabs %}

### Настройка интерфейса Oz Mobile SDK

Чтобы настроить интерфейс Oz Liveness, воспользуйтесь `UICustomization`. Полный список полей находится [здесь](https://doc.ozforensics.com/oz-knowledge-ru/rukovodstva/rukovodstvo-razrabotchika/sdk/oz-mobile-sdk/android/pages/GlyZwHmfP4TpgDOnHlBh#h.c69s4peyk55n).

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

```kotlin
OzLivenessSDK.config.customization = UICustomization().apply {
    // параметры настройки тулбара
    toolbarCustomization.apply {
        closeButtonIcon = R.drawable.ic_close
        closeButtonColor = Color.ColorRes(R.color.white)
        titleText = "Liveness"
        titleFont = R.font.roboto
        titleSize = 18
        titleColor = Color.ColorRes(R.color.white)
        titleAlpha = 100
        isTitleCentered = true
        backgroundColor = Color.ColorRes(R.color.black)
        backgroundAlpha = 60
    }
    // параметры настройки подсказки в центре
    centerHintCustomization.apply {
        textFont = R.font.roboto
        textColor = Color.ColorRes(R.color.white)
        textSize = 20
        textStyle = R.style.Sdk_Text_Primary
        backgroundColor = Color.ColorRes(R.color.black)
        backgroundOpacity = 56
        backgroundCornerRadius = 14
        textAlpha = 100
    }
    // параметры настройки анимации подсказки
    hintAnimation.apply {
        hintGradientColor = Color.ColorRes(R.color.error_red)
        hintGradientOpacity = 80
        animationIconSize = 120
        hideAnimation = false
    }
    // параметры настройки рамки вокруг лица
    faceFrameCustomization.apply {
        geometryType = GeometryType.Rectangle(10) // 10 is the corner radius
        strokeWidth = 5
        strokeFaceNotAlignedColor = Color.ColorRes(R.color.error_red)
        strokeFaceAlignedColor = Color.ColorRes(R.color.success_green)
        strokeAlpha = 100
        verticalPosition = 50
        strokePadding = 3
    }
    // параметры настройки отображения версии SDK
    versionLabelCustomization.apply {
        textFont = R.font.roboto
        textSize = 12
        textColor = Color.ColorRes(R.color.white)
        textAlpha = 100
    }
    // параметры настройки фона за рамкой
    backgroundCustomization.apply {
        backgroundColor = Color.ColorRes(R.color.black)
        backgroundAlpha = 60
    }
    // скрытие строки статуса и кнопки навигации
    hideStatusBar = true
    // параметры настройки сообщения с предупреждением о записи
    antiScamCustomization = AntiScamCustomization().apply {
        textMessage = "Recording..."
        textFont = R.font.roboto
        textSize = 14
        textColor = Color.ColorRes(R.color.white)
        textAlpha = 100
        backgroundColor = Color.ColorRes(R.color.black)
        backgroundOpacity = 100
        cornerRadius = 20
        flashColor = Color.ColorRes(R.color.success_green)
    }
    // параметры настройки логотипа пользователя, обязательны все четыре
    // (необходимы соответствующие параметры лицензии)
    logoCustomization = LogoCustomization(
        Image.Drawable(R.drawable.ic_logo), // image
        Size(176, 64),                      // size (dp)
        100,                                // verticalPosition
        50,                                 // horizontalPosition
    )
}
```

{% endtab %}

{% tab title="Java" %}

```java
OzLivenessSDK.config.setCustomization(new UICustomization(
    // параметры настройки тулбара
    new ToolbarCustomization(
        R.drawable.ic_close,                        // closeButtonIcon
        new Color.ColorRes(R.color.white),          // closeButtonColor
        "Liveness",                                 // titleText
        R.font.roboto,                              // titleFont
        18,                                         // titleSize (sp)
        null,                                       // titleFontStyle
        new Color.ColorRes(R.color.white),          // titleColor
        100,                                        // titleAlpha (%)
        true,                                       // isTitleCentered
        null,                                       // titleStyle
        new Color.ColorRes(R.color.black),          // backgroundColor
        60                                          // backgroundAlpha (%)
    ),
    // параметры настройки подсказки в центре
    new CenterHintCustomization(
        R.font.roboto,                              // textFont
        null,                                       // textFontStyle
        new Color.ColorRes(R.color.white),          // textColor
        20,                                         // textSize (sp)
        null,                                       // verticalPosition
        R.style.Sdk_Text_Primary,                   // textStyle
        new Color.ColorRes(R.color.black),          // backgroundColor
        56,                                         // backgroundOpacity (%)
        14,                                         // backgroundCornerRadius (dp)
        100                                         // textAlpha (%)
    ),
    // параметры настройки анимации подсказки
    new HintAnimation(
        new Color.ColorRes(R.color.error_red),      // hintGradientColor
        80,                                         // hintGradientOpacity (%)
        120,                                        // animationIconSize
        false                                       // hideAnimation
    ),
    // параметры настройки рамки вокруг лица
    new FaceFrameCustomization(
        new GeometryType.Rectangle(10),             // geometryType, 10 = corner radius
        5,                                          // strokeWidth (dp)
        new Color.ColorRes(R.color.error_red),      // strokeFaceNotAlignedColor
        new Color.ColorRes(R.color.success_green),  // strokeFaceAlignedColor
        100,                                        // strokeAlpha (%)
        50,                                         // verticalPosition (%)
        3                                           // strokePadding (dp)
    ),
    // параметры настройки отображения версии SDK
    new VersionLabelCustomization(
        R.font.roboto,                              // textFont
        12,                                         // textSize (sp)
        null,                                       // textFontStyle
        new Color.ColorRes(R.color.white),          // textColor
        100,                                        // textAlpha (%)
        R.style.Sdk_Text_Primary                    // textStyle
    ),
    // параметры настройки фона за рамкой
    new BackgroundCustomization(
        new Color.ColorRes(R.color.black),          // backgroundColor
        60                                          // backgroundAlpha (%)
    ),
    // скрытие строки статуса и кнопок навигации
    true,                                           // hideStatusBar
    null,                                           // dialogStyle
    // параметры настройки сообщения с предупреждением о записи
    new AntiScamCustomization(
        "Recording...",                             // textMessage
        R.font.roboto,                              // textFont
        14,                                         // textSize
        new Color.ColorRes(R.color.white),          // textColor
        100,                                        // textAlpha (%)
        R.style.Sdk_Text_Primary,                   // textStyle
        new Color.ColorRes(R.color.black),          // backgroundColor
        100,                                        // backgroundOpacity (%)
        20,                                         // cornerRadius
        new Color.ColorRes(R.color.success_green)   // flashColor
    ),
    // параметры настройки логотипа пользователя
    // (необходимы соответствующие параметры лицензии)
    new LogoCustomization(
        new Image.Drawable(R.drawable.ic_logo),     // image
        new Size(176, 64),                          // size (dp)
        100,                                        // verticalPosition
        50                                          // horizontalPosition
    )
));
```

{% endtab %}
{% endtabs %}

По умолчанию SDK использует локаль устройства. Чтобы сменить локаль, используйте код ниже:&#x20;

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

```kotlin
OzLivenessSDK.config.localizationCode = OzLocalizationCode.RU
```

{% endtab %}

{% tab title="Java" %}

```java
OzLivenessSDK.config().setLocalizationCode(OzLocalizationCode.RU);
```

{% endtab %}
{% endtabs %}


---

# 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/sdk/oz-mobile-sdk/android/nastroika-android-sdk.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.
