---
title: "Отображение пейвола, созданного с помощью Remote Config, в Android SDK"
description: "Узнайте, как показывать пейволы на основе Remote Config в Adapty Android SDK для персонализации пользовательского опыта."
---

Если вы настроили пейвол с помощью Remote Config, вам потребуется реализовать его отображение в коде мобильного приложения. Поскольку Remote Config предоставляет гибкость под ваши задачи, вы сами определяете, что входит в пейвол и как он выглядит. Мы предоставляем метод для получения Remote Config, а остальное — на ваше усмотрение.

## Получение Remote Config пейвола и его отображение \{#get-paywall-remote-config-and-present-it\}

Чтобы получить Remote Config пейвола, обратитесь к свойству `remoteConfig` и извлеките нужные значения.

<Tabs groupId="current-os" queryString>

<TabItem value="kotlin" label="Kotlin" default>

```kotlin showLineNumbers
Adapty.getPaywall("YOUR_PLACEMENT_ID") { result ->
    when (result) {
        is AdaptyResult.Success -> {
            val paywall = result.value
            val headerText = paywall.remoteConfig?.dataMap?.get("header_text") as? String
        }
        is AdaptyResult.Error -> {
            val error = result.error
            // handle the error
        }
    }
}
```

</TabItem>
<TabItem value="java" label="Java" default>

```java showLineNumbers
Adapty.getPaywall("YOUR_PLACEMENT_ID", result -> {
    if (result instanceof AdaptyResult.Success) {
        AdaptyPaywall paywall = ((AdaptyResult.Success<AdaptyPaywall>) result).getValue();
        
        AdaptyPaywall.RemoteConfig remoteConfig = paywall.getRemoteConfig();
        
        if (remoteConfig != null) {
            if (remoteConfig.getDataMap().get("header_text") instanceof String) {
                String headerText = (String) remoteConfig.getDataMap().get("header_text");
            }
        }
    } else if (result instanceof AdaptyResult.Error) {
        AdaptyError error = ((AdaptyResult.Error) result).getError();
        // handle the error
    }
});
```
</TabItem>
</Tabs>

Получив все необходимые значения, соберите их в визуально привлекательную страницу. Убедитесь, что дизайн адаптируется под разные размеры экранов и ориентации, обеспечивая удобный пользовательский опыт на всех устройствах.

:::warning
Обязательно [записывайте событие просмотра пейвола](present-remote-config-paywalls-android#track-paywall-view-events), как описано ниже, чтобы аналитика Adapty могла фиксировать данные для воронок и A/B-тестов.
:::

После отображения пейвола настройте процесс покупки. Когда пользователь совершает покупку, вызовите `.makePurchase()` с продуктом из вашего пейвола. Подробнее о методе `.makePurchase()` читайте в разделе [Совершение покупок](android-making-purchases).

Рекомендуем [создать резервный пейвол](android-use-fallback-paywalls). Он будет отображаться пользователю при отсутствии интернета или кеша, обеспечивая бесперебойную работу в таких ситуациях.

## Отслеживание событий просмотра пейвола \{#track-paywall-view-events\}

Adapty помогает измерять эффективность ваших пейволов. Данные о покупках собираются автоматически, а вот логирование просмотров пейвола требует вашего участия — только вы знаете, когда пользователь видит пейвол.

Чтобы зафиксировать событие просмотра пейвола, вызовите `.logShowPaywall(paywall)` — это отразится в метриках пейвола в воронках и A/B-тестах.

:::important
Вызывать `.logShowPaywall(paywall)` не нужно, если вы отображаете пейволы, созданные в [Paywall Builder](adapty-paywall-builder).
:::

```kotlin showLineNumbers
Adapty.logShowPaywall(paywall)
```

Параметры запроса:

| Параметр    | Обязательность | Описание                                                                                                    |
| :---------- | :------------- |:------------------------------------------------------------------------------------------------------------|
| **paywall** | обязательный   | Объект [`AdaptyPaywall`](https://android.adapty.io/adapty/com.adapty.models/-adapty-paywall/). |