TTRPG License Manager

Android-приложение для администрирования лицензий TTRPG Player через сервер DndGamePlayerLicenseServer.

Возможности

  • Лицензии — список всех продуктовых ключей с параметрами (sub, pid, лимит устройств, срок, статус отзыва, активированные deviceId).
  • Новый ключ — генерация продуктового ключа через POST /v1/admin/product-keys.
  • Настройки — URL сервера и admin token (LICENSE_ADMIN_TOKEN).

Требования

  • Android Studio Ladybug (2024.2+) или новее
  • JDK 17
  • Android SDK 35

Сборка

Первоначальная настройка SDK (Windows)

powershell -ExecutionPolicy Bypass -File .\scripts\setup-android-sdk.ps1
$env:ANDROID_HOME = "$env:LOCALAPPDATA\Android\Sdk"

Android Studio установлен в C:\Program Files\Android\Android Studio. Для запуска на устройстве подключите телефон с USB-отладкой или создайте эмулятор в Android Studio (Device Manager).

Сборка debug APK

./gradlew assembleDebug

APK: app/build/outputs/apk/debug/app-debug.apk

  1. Откройте проект в Android Studio (или соберите через Gradle, см. выше).
  2. При первом запуске укажите в Настройках:
    • URL: https://license.ttrpgplayer.ru/ (или локальный сервер)
    • Admin token с сервера (LICENSE_ADMIN_TOKEN)
  3. Run на устройстве или эмуляторе.
./gradlew assembleDebug

API сервера

Приложение использует admin-эндпоинты (Bearer token):

Метод Путь Описание
GET /v1/admin/licenses Список лицензий
POST /v1/admin/product-keys Создание ключа

Перед использованием приложения задеплойте обновлённый сервер с этими эндпоинтами.

Логотип

Иконка и брендинг — логотип TTRPG Player (фиолетовая молния #8B5CF6).

Локальная разработка с сервером

cd DndGamePlayerLicenseServer
cp data.example.json data.json
# задайте LICENSE_PRIVATE_KEY_PEM
npm start

В приложении укажите URL http://10.0.2.2:3847/ (эмулятор) и admin token.

S
Description
No description provided
Readme 162 KiB
Languages
Kotlin 98.1%
PowerShell 1.9%