Создание пейвола с переключателем пробного периода

Переключатель пробного периода позволяет переключать пейвол между продуктами с бесплатным пробным периодом и без него. Но сам переключатель — это просто выключатель: включён или выключён. Вы сами задаёте правила, которые показывают нужные карточки и определяют, какой продукт выбран.

В этом гайде показано, как задать эти правила и собрать полноценный пейвол с переключателем.

Перед началом работы

Important

Если вы хотите сделать триал опциональным (что необходимо для использования переключателя триала), не создавайте introductory offer. На iOS introductory offers применяются автоматически для каждого подходящего пользователя. Отключить их невозможно. Используйте вместо этого promotional offer. См. Как Adapty работает с офферами.

1. Добавьте карточки продуктов

  1. Нажмите меню + > Paywall & Commerce > Products и выберите пресет.
  2. Выделите карточку — на холсте или в панели Layers. Назначьте продукт карточке, а поле Select offer (optional) оставьте пустым.
  3. Повторите для каждого тарифного плана — по одной карточке на план, без пробного периода.
  4. Продублируйте каждую карточку. На каждой копии выберите пробное предложение в поле Select offer (optional).

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

Четыре карточки продуктов на холсте — годовой и месячный, каждый с пробным периодом и без — все отображаются до того, как заданы какие-либо правила видимости

2. Добавьте переключатель пробного периода

  1. Нажмите + > Paywall & Commerce > Trial Toggle.

    The trial toggle added to the paywall screen and selected on the canvas
  2. Убедитесь, что переключатель входит в группу выбора правильного типа. Нажмите на пустую область холста, чтобы открыть Screen settings. В разделе Selectable groups откройте trial_toggle, установите Group Type в значение Toggle и нажмите Save. В диалоге отобразится переменная, которую мы будем использовать для определения состояния переключателя: trial_toggle.isActive.

    The Edit group dialog with Group Type set to Toggle and the condition variable trial_toggle.isActive below it
  3. Отредактируйте метку переключателя.

Оставьте переключатель выключенным по умолчанию. Предварительно включённый переключатель триала может привести к отклонению в App Store как тёмный паттерн — см. Переключатели.

3. Показ нужных карточек для каждого состояния переключателя

На вкладке Design каждой карточки в разделе Visibility выберите Conditional и настройте условие:

КарточкаУсловие
С пробным периодомtrial_toggle.isActive Equals True
Без пробного периодаtrial_toggle.isActive Equals False
The Yearly_notrial card selected with Visibility set to Conditional and the Show element if popover showing trial_toggle.isActive Equals False

4. Выбирайте видимую карточку при переключении тогла

Карточки теперь меняются вместе с тоглом, но выбранный продукт — нет. Карточка, которая становится невидимой, остаётся выбранной, и действие Purchase по-прежнему направлено на неё — то есть пользователь, включивший пробный период, всё равно может быть списан.

Добавьте Conditional Action к тоглу, чтобы при каждом нажатии выбор сбрасывался на видимую карточку.

  1. На панели Layers выберите контейнер Trial toggle.
  2. Откройте вкладку Interactions, добавьте триггер On tap и Conditional Action:
БлокЧто настроить
iftrial_toggle.isActive Equals True
thenSelect Product, указывающий на карточку с триалом
elseSelect Product, указывающий на тот же продукт без триала
Триггер On Tap переключателя с условным действием: trial_toggle.isActive Equals True выбирает одну карточку, ветка else — другую

5. Обновите надпись на кнопке

Призыв к действию должен меняться, когда пробный период включён.

  1. Выберите текстовый элемент кнопки.

  2. На вкладке Design в разделе Content выберите Conditional и нажмите Edit conditions.

  3. Заполните блоки:

    БлокЧто настроить
    iftrial_toggle.isActive Equals True
    thenТекст для пробного периода, например Start your free trial
    elseСтандартный текст, например Purchase
The Edit conditional text dialog with trial_toggle.isActive Equals True showing Start your free trial, and Purchase in the else branch

Подробнее об условном тексте читайте в разделе Добавить условный текст.