Релиз 1.4.6: обновление протокола звонков
All checks were successful
Android Kernel Build / build (push) Successful in 23m10s

This commit is contained in:
2026-04-04 23:32:00 +05:00
parent 2bb3281ccf
commit 9e14724ae2
2 changed files with 10 additions and 26 deletions

View File

@@ -23,8 +23,8 @@ val gitShortSha = safeGitOutput("rev-parse", "--short", "HEAD") ?: "unknown"
// ═══════════════════════════════════════════════════════════
// Rosetta versioning — bump here on each release
// ═══════════════════════════════════════════════════════════
val rosettaVersionName = "1.4.5"
val rosettaVersionCode = 47 // Increment on each release
val rosettaVersionName = "1.4.6"
val rosettaVersionCode = 48 // Increment on each release
val customWebRtcAar = file("libs/libwebrtc-custom.aar")
android {

View File

@@ -18,31 +18,15 @@ object ReleaseNotes {
Update v$VERSION_PLACEHOLDER
Звонки
- Полноэкранный входящий звонок (IncomingCallActivity) поверх экрана блокировки с кнопками Принять/Отклонить
- Обновлён протокол WebRTC: publicKey и deviceId в каждом пакете (совместимость с новым сервером)
- Звонок больше не сбрасывается при переподключении WebSocket
- Исправлен бесконечный статус "Exchanging keys" — KEY_EXCHANGE отправляется с ретраем до 6 сек
- Автоматическая привязка аккаунта при принятии звонка из push-уведомления
- Исправлен краш ForegroundService при исходящем звонке (safeStopForeground)
- Убрано мелькание "Unknown" при завершении звонка
- Кнопка Decline теперь работает во всех фазах звонка
- Баннер активного звонка теперь отображается внутри диалога
- Дедупликация push + WebSocket сигналов (без мерцания уведомлений)
- Защита от фантомных звонков при принятии на другом устройстве
- Корректное освобождение PeerConnection (dispose) при завершении звонка
- Кастомный WebRTC AAR с E2EE добавлен в репозиторий для CI-сборок
- Диагностические логи звонков и уведомлений в rosettadev1
- Android переведён на новый серверный сигналинг звонков: CALL -> ACCEPT -> KEY_EXCHANGE -> ACTIVE
- Для звонков добавлена полная поддержка callId/joinToken (в CALL/ACCEPT/END_CALL)
- Добавлена обработка RINGING_TIMEOUT с корректным завершением звонка
- WebRTC пакет 0x1B обновлён под новый формат сервера (без лишних полей в payload)
- Push звонка теперь пробрасывает callId/joinToken в CallManager для стабильного принятия до WebSocket
Уведомления
- Аватарки и имена пользователей в уведомлениях о сообщениях и звонках
- Настройка включения/выключения аватарок в уведомлениях (Notifications → Avatars in Notifications)
- Сохранение FCM токена в rosettadev1 для диагностики
- Поддержка tokenType и deviceId в push-подписке
Интерфейс
- Ограничение масштаба шрифта до 1.3x — вёрстка не ломается на телефонах с огромным текстом
- Новые обои: Light 1-3 для светлой темы, Dark 1-3 для тёмной темы
- Убраны старые обои, исправлено растяжение превью обоев
Стабильность
- Улучшены диагностические логи звонков (callId/joinToken в state/log)
- Обновлена совместимость Android с актуальными версиями desktop и rosetta-wss
""".trimIndent()
fun getNotice(version: String): String =