Техническое задание на разработку мобильного приложения

Необходимо создать кроссплатформенное приложение под операционные системы Android и iOS с использованием движка Unity.

Основные функциональные требования

1. Управление пользовательской сессией

  • При запуске приложение должно проверять наличие сохранённых данных сессии (токены доступа/обновления или идентификатор пользователя).
  • Если валидная сессия найдена - восстановить её, при необходимости выполнить обновление токенов (refresh).
  • Если сессия отсутствует или недействительна - выполнить автоматическую анонимную авторизацию через облачный сервис, сохранить полученные данные.

2. Работа с данными

  • После успешной авторизации (или её восстановления) приложение должно запрашивать и отображать список элементов (персонажей) из облачной базы данных.
  • Необходимо создать локальную базу данных на устройстве для хранения токенов авторизации и кэширования таблицы со списком персонажей.
  • Структуру таблиц в облачной базе данных можно адаптировать под нужды проекта.

3. Пользовательский интерфейс и локализация

  • Интерфейс должен точно соответствовать предоставленным макетам (скриншот в приложении к ТЗ).
  • Реализовать систему локализации для поддержки нескольких языков.
  • Все ошибки (сетевые, авторизации, загрузки данных) должны корректно обрабатываться и отображаться пользователю в понятном виде через UI.

Технические детали

  • Платформа: Unity.
  • Целевые ОС: Android, iOS.
  • Бэкенд и облачная БД: Supabase.
  • Локальное хранилище: Встроенная БД для кэширования данных и хранения сессии.