Отображение пейволов

Если вы настроили пейвол с помощью Paywall Builder, вам не нужно беспокоиться о его рендеринге в коде мобильного приложения для отображения пользователю. Такой пейвол содержит как то, что должно быть показано, так и то, как именно это должно быть показано.

Этот гайд охватывает новый Paywall Builder, который требует Adapty SDK версии 3.3.0 или выше.

Чтобы отображать пейволы на Remote Config, см. Рендеринг пейволов, созданных с помощью Remote Config.

Чтобы отобразить пейвол, используйте метод view.Present() для объекта view, созданного методом CreatePaywallView. Каждый объект view можно использовать только один раз. Если нужно показать пейвол снова, вызовите CreatePaywallView ещё раз, чтобы создать новый экземпляр view.

Повторное использование одного и того же view без его пересоздания может привести к ошибке AdaptyUIError.viewAlreadyPresented.

view.Present((error) => {
  // handle the error
});

Хотите увидеть реальный пример интеграции Adapty SDK в мобильное приложение? Посмотрите наши примеры приложений — они демонстрируют полную настройку: отображение пейволов, совершение покупок и другие базовые функции.

Показ диалога

Используйте этот метод вместо стандартных диалоговых окон, когда на Android отображается пейвол. На Android обычные алерты появляются позади пейвола и становятся невидимы для пользователей. Этот метод гарантирует корректное отображение диалога поверх пейвола на всех платформах.

var dialog = new AdaptyUIDialogConfiguration()
    .SetTitle("Close paywall?")
    .SetContent("You will lose access to exclusive offers.")
    .SetDefaultActionTitle("Stay")
    .SetSecondaryActionTitle("Close");

AdaptyUI.ShowDialog(view, dialog, (action, error) => {
    if (error == null) {
        if (action == AdaptyUIDialogActionType.Secondary) {
            // User confirmed - close the paywall
            view.Dismiss();
        }
        // If primary - do nothing, user stays
    }
});

Настройка стиля презентации на iOS

Настройте способ отображения пейвола на iOS, передав параметр iosPresentationStyle в метод Present(). Параметр принимает значения AdaptyUIIOSPresentationStyle.FullScreen (по умолчанию) или AdaptyUIIOSPresentationStyle.PageSheet.

view.Present(AdaptyUIIOSPresentationStyle.PageSheet, (error) => {
    // handle the error
});