111 lines
4.4 KiB
Markdown
111 lines
4.4 KiB
Markdown
# Android Roadmap (до production)
|
||
|
||
## Принципы
|
||
- Backend/API уже есть: Android строим поверх текущего контракта (`/auth`, `/chats`, `/messages`, `/realtime`, `/media`).
|
||
- Сначала закрываем core-мессенджер, потом polish.
|
||
- Каждая фаза завершается demo + regression check.
|
||
|
||
## Phase 0: Foundation (1-2 недели)
|
||
**Цель:** запустить каркас приложения и базовую сетевую инфраструктуру.
|
||
|
||
### Scope
|
||
- Проектная архитектура, DI, навигация.
|
||
- Retrofit/OkHttp + auth/refresh.
|
||
- Room + DataStore заготовки.
|
||
- Базовый theme system и design tokens.
|
||
- Экран логина (email-first).
|
||
|
||
### DoD
|
||
- Можно авторизоваться и получить `me`.
|
||
- Сборка/линт/тесты в CI зеленые.
|
||
|
||
## Phase 1: Web-Core parity MVP (3-5 недель)
|
||
**Цель:** довести Android до текущего рабочего web-core.
|
||
|
||
### Scope
|
||
- Chat list: unread/mentions/pin/archive/mute badges.
|
||
- Chat screen: send/read/reply/edit/delete/forward/reactions.
|
||
- Realtime: receive/update/delete/typing/read/delivered/presence.
|
||
- Media: image/video/file/audio upload + viewer.
|
||
- Voice: record (hold/lock/cancel) + playback + waveform.
|
||
- Groups/channels roles/permissions, invite links.
|
||
|
||
### DoD
|
||
- Основные пользовательские сценарии проходят без перезапуска.
|
||
- Нет blocker-багов по auth/chat/realtime/media.
|
||
|
||
## Phase 2: Stability & Security (2-3 недели)
|
||
**Цель:** сделать релизно-устойчивую версию.
|
||
|
||
### Scope
|
||
- Offline queue + reconcile после reconnect.
|
||
- Session management + 2FA + recovery codes UX.
|
||
- Crash reporting + performance baseline.
|
||
- Deep link handling (`verify-email`, `join`, `open chat/message`).
|
||
- Расширенное тестирование (unit/integration/ui).
|
||
|
||
### DoD
|
||
- Crash-free rate целевой для internal beta.
|
||
- Критичные сценарии покрыты автотестами.
|
||
|
||
## Phase 3: Product polish (2-4 недели)
|
||
**Цель:** UX-качество уровня “приятно ежедневно использовать”.
|
||
|
||
### Scope
|
||
- Chat info polish (media tabs, links, jump to message).
|
||
- Контекстные меню и жесты без конфликтов.
|
||
- Тонкая настройка тем (light/dark readability).
|
||
- Улучшение поиска и навигации по результатам.
|
||
- Accessibility pass.
|
||
|
||
### DoD
|
||
- UX-bug backlog снижен до low/medium.
|
||
- Продуктовая приемка по ключевым flows.
|
||
|
||
## Phase 4: Release (1-2 недели)
|
||
**Цель:** выкладка в production.
|
||
|
||
### Scope
|
||
- FCM push production config.
|
||
- Подготовка Play Console, privacy, release notes.
|
||
- Staged rollout (5% -> 25% -> 100%).
|
||
- Monitoring и incident runbook.
|
||
|
||
### DoD
|
||
- Успешный staged rollout без критических откатов.
|
||
|
||
## Приоритеты (P0/P1/P2)
|
||
### P0 (обязательно до релиза)
|
||
- Auth + refresh + logout cleanup
|
||
- Chat list + chat screen core actions
|
||
- Realtime стабильность
|
||
- Media upload/view + voice record/playback
|
||
- Roles/permissions для group/channel
|
||
- Crash reporting + минимальные тесты
|
||
|
||
### P1 (сразу после P0)
|
||
- Search UX
|
||
- Chat info/media tabs
|
||
- Advanced formatting/threads polish
|
||
- Better offline UX
|
||
|
||
### P2 (после релиза)
|
||
- Дополнительные эффекты/анимации
|
||
- Расширенная аналитика
|
||
- Экспериментальные UX-фичи
|
||
|
||
## Оценка сроков
|
||
- Реалистично до strong beta: **8-12 недель**.
|
||
- До стабильного production с полировкой: **10-16 недель**.
|
||
|
||
## Риски
|
||
- Drift между web и android поведением.
|
||
- Realtime race conditions при нестабильной сети.
|
||
- Media edge-cases (mime/duration/seek).
|
||
- Permission UX (микрофон/уведомления) на разных Android версиях.
|
||
|
||
## Следующий практический шаг
|
||
1. Заморозить API-контракт (OpenAPI snapshot).
|
||
2. Поднять Android skeleton (Phase 0).
|
||
3. Зафиксировать Definition of Done для Phase 1 demo.
|