Нативная интеграция Yandex Pay и инвентаря виджетов для Flutter

Разработчики создали Flutter-библиотеки ypay и ypay_inventory для нативной интеграции Yandex Pay, отказавшись от WebView из-за проблем с безопасностью и UX. Обе библиотеки предоставляют унифицированный API для платежей и управления инвентарем виджетов. ypay отвечает за проведение платежей по ссылке, обработку их результатов, абстрагируясь от сложной логики.
Нативная интеграция Yandex Pay и инвентаря виджетов для Flutter
Изображение носит иллюстративный характер

Библиотека ypay_inventory предоставляет нативные виджеты и бейджи Yandex Pay: YPayBadge, YPaySimpleWidgetView, YPayInfoWidgetView и YPayBnplPreviewWidgetView. Виджеты показывают возможность оплаты в рассрочку или получения кэшбека. Размеры виджетов автоматически рассчитываются, но следует учитывать минимальные размеры и корректную настройку темы для Application и Activity.

При разработке учитывалась разница в именовании параметров виджетов на iOS и Android. Было принято решение придерживаться наименований Android SDK. Основные параметры виджетов: сумма заказа, тема (светлая, темная, системная), выравнивание (для бейджей), прозрачность (для виджетов) и типы отображаемых данных (сплит, кэшбэк). Для YPayBnplPreviewWidgetView доступны дополнительные настройки, включая header, background, наличие обводки, отступов, размер, наличие кнопки «Оформить».

При разработке библиотеки возникли сложности с размерами виджетов на платформах. В Android размеры виджетов изменяются через OnLayoutChangeListener и OnGlobalLayoutListener. В iOS размеры виджетов меняются через updateView, updateSize и viewDidLayoutSubviews. Для корректной работы библиотек рекомендуется ознакомиться с примерами приложений и официальной документацией .


Новое на сайте

20854Как дешёвые Android-смартфоны превращаются в чужие прокси? 20853В Индии имя звонящего появится на экране вместе с номером 20852Как проверить готовность команды к звонку с клонированным голосом? 20851Уязвимости MarkLogic: делегированные права могли открыть путь к администраторскому... 20850Как GitHub закрыл лазейку, угрожавшую тысячам npm-пакетов? 20849Hirudo подменяет банковские приложения, чтобы обойти их защиту 20848Как Vghost превратил старую ошибку Linux в путь к root? 20847Уязвимости в PAN-OS и Cisco Secure Email Gateway уже используют атакующие 20846Как уязвимость GitLab могла открыть сервер для чужого кода? 20845Уязвимость SAP Cloud SDK могла отправить OAuth2-секреты злоумышленнику 20844Уязвимость в Nextcloud открыла путь к веб-оболочкам на серверах 20843Смогут ли малые ИИ-модели превратить бытовую технику в ботнет? 20842Пять уязвимостей NGINX: кому грозит риск и как закрыть его 20841Тайный диктофон в OpenAI: что утверждают следователи 20840Как проверять уязвимость входа, не заходя дальше дозволенного?
Ссылка