Домашняя страница


RU EN
🏠 Домой ❮ Назад

Unreal-плагин RuStore для приёма платежей через сторонние приложения

Плагин RuStoreBillingClient помогает интегрировать в ваш проект механизм оплаты через сторонние приложения (например: SberPay или СБП). Поддерживаются версии Unreal Engine 5.3 и выше.

Установка плагина в свой проект

  1. Перейдите в раздел Релизы репозитория проекта на GitFlic.

  2. Скачайте из выбранного релиза артефакты:

    • RuStoreBilling.zip
    • RuStoreCore.zip
  3. Распакуйте скачанные архивы в папку Plugins в корне вашего Unreal-проекта, чтобы получилась следующая структура:

📁 your_project
└─ 📁 Plugins
   ├─ 📁 RuStoreBilling
   │  ├─ 📁 Binaries
   │  ├─ 📁 Content
   │  ├─ 📁 Intermediate
   │  ├─ 📁 Resources
   │  ├─ 📁 Source
   │  └─ RuStoreBilling.uplugin
   └─ 📁 RuStoreCore
      ├─ 📁 Binaries
      ├─ 📁 Content
      ├─ 📁 Intermediate
      ├─ 📁 Resources
      ├─ 📁 Source
      └─ RuStoreCore.uplugin
  1. Перезапустите Unreal Engine.

  2. В списке плагинов (Edit → Plugins → Project → Mobile) отметьте плагины RuStoreBilling и RuStoreCore.

  3. Подключите модули RuStoreCore и RuStoreBilling в файле YourProject.Build.cs в списке PublicDependencyModuleNames.

  4. В настройках проекта (Edit → Project Settings → Android) установите параметр Minimum SDK Version на уровень не ниже 24 и параметр Target SDK Version не ниже 31.

Обработка deeplink

Для корректной работы оплаты через сторонние приложения (СБП, SberPay и др.) необходимо правильно реализовать обработку deeplink.

Плагин RuStore Billing автоматически изменит AndroidManifest.xml: 1. Удалит запускающий intent-filter у GameActivity или SplashActivity. 2. Добавит дополнительную активити RuStoreBillingIntentFilterActivity с intent-filter для запуска приложения и обработки deeplink.

Изменить это поведение можно в файле RuStoreBilling_UPL_Android.xml.

Вашему проекту необходимо реализовать наличие строкового ресурса @string/rustore_app_scheme. Для этого:

  1. Создайте файл строковых ресурсов с необходимым значением, например, rustore_billing_values.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="rustore_app_scheme">yourscheme</string>
</resources>
  1. Добавьте копирование файла в UPL-скрипт вашего проекта:
<?xml version="1.0" encoding="utf-8"?>
<root xmlns:android="http://schemas.android.com/apk/res/android">
    <resourceCopies>
        <copyFile src="$S(PluginDir)/rustore_billing_values.xml" dst="$S(BuildDir)/res/values/rustore_billing_values.xml" />
    </resourceCopies>
</root>

Значение @string/rustore_app_scheme — схема вашего deeplink. Эта схема должна совпадать со схемой, указываемой при инициализации billing-клиента.

Подробнее о настройке deeplink см. в руководстве онлайн.

Инициализация SDK

Перед вызовом методов библиотеки необходимо выполнить её инициализацию.

FURuStoreBillingClientConfig config;
config.consoleApplicationId = "123456";
config.deeplinkScheme = "yourscheme";
config.enableLogs = false;

URuStoreBillingClient::Instance()->Init(config);

Все операции с клиентом также доступны из Blueprints.

  • consoleApplicationId — идентификатор вашего приложения в RuStore Консоли.
  • deeplinkScheme — схема deeplink, должна совпадать со значением @string/rustore_app_scheme.
  • enableLogs — включение логирования (по умолчанию false).

Package Name приложения должен совпадать с Package Name APK-файла, который вы публиковали в системе RuStore Консоль. Подпись keystore должна совпадать с подписью опубликованного приложения.

Вызов Init() привязывает объект к корню сцены, и если дальнейшая работа с объектом больше не планируется, для освобождения памяти необходимо выполнить метод Dispose().

Подробнее об инициализации см. в руководстве онлайн.

Начните изучение документации библиотеки RuStore с методов класса URuStoreBillingClient. Или воспользуйтесь руководством онлайн.

Техническая поддержка

Дополнительная помощь и инструкции доступны в документации RuStore и по электронной почте support@rustore.ru.

Условия распространения

Данное программное обеспечение, включая исходные коды, бинарные библиотеки и другие файлы, распространяется под лицензией MIT. Информация о лицензировании доступна в документе MIT-LICENSE.