Реализация веб-пейволов в Unity SDK

Прежде чем начать, убедитесь, что вы настроили веб-пейвол в дашборде и установили Adapty SDK версии 3.14 или выше.

Открытие веб-пейволов

Если вы работаете с пейволом, разработанным самостоятельно, вам нужно обрабатывать веб-пейволы через метод SDK. Метод Adapty.OpenWebPaywall:

  1. Генерирует уникальный URL, позволяющий Adapty связать конкретный пейвол, показанный определённому пользователю, с веб-страницей, на которую тот был перенаправлен.
  2. Отслеживает возвращение пользователей в приложение и затем запрашивает Adapty.GetProfile с короткими интервалами, чтобы определить, были ли обновлены права доступа профиля.

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

Adapty.OpenWebPaywall(
    product,
    (error) =>
    {
        if (error != null)
        {
            Debug.LogError($"Failed to open web paywall: {error.Message}");
        }
        else
        {
            Debug.Log("Web paywall opened successfully");
        }
    }
);

Существует две версии метода OpenWebPaywall:

  1. OpenWebPaywall(product) — генерирует URL по пейволу и также добавляет в URL данные о продукте.
  2. OpenWebPaywall(paywall) — генерирует URL по пейволу без добавления данных о продукте. Используйте этот вариант, если продукты в пейволе Adapty отличаются от продуктов в веб-пейволе.

Обработка ошибок

Код ошибкиОписаниеРекомендуемое действие
AdaptyErrorCode.WrongParamУ пейвола или продукта не настроен URL для веб-покупки, либо не удалось открыть URL в браузереПроверьте сообщение об ошибке для получения подробностей. Убедитесь в корректности настройки пейвола/продукта в дашборде Adapty или проверьте настройки устройства.
AdaptyErrorCode.DecodingFailedНе удалось корректно закодировать параметры в URLУбедитесь, что параметры URL валидны и правильно отформатированы

Проверяйте свойство Message ошибки, чтобы получить конкретные подробности о том, что пошло не так, — WrongParam может указывать на несколько различных проблем (отсутствующий URL покупки, невозможность открыть браузер и т. д.).

Открытие веб-пейволов во встроенном браузере

Открытие веб-пейволов во встроенном браузере поддерживается начиная с Adapty SDK v. 3.15.

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

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

Чтобы включить это, передайте AdaptyWebPresentation.InAppBrowser в метод OpenWebPaywall:

Adapty.OpenWebPaywall(
    product,
    AdaptyWebPresentation.InAppBrowser, // default — ExternalBrowser
    (error) =>
    {
        if (error != null)
        {
            Debug.LogError($"Failed to open web paywall: {error.Message}");
        }
        else
        {
            Debug.Log("Web paywall opened successfully");
        }
    }
);