Fix and clear
[0.3.4] Генеральная уборка
багфиксы, нового мало - зато старое теперь работает
Исправили
-
Дубликаты обложек ВЕЗДЕ. Виноват был кеш: все картинки ходили через прокси с одним и тем же URL, и кеш честно отдавал первую попавшуюся всем подряд. Теперь у каждой свой ключ
-
Та же беда потенциально ломала waveform - волны могли перепутаться между треками, тоже починено
-
Рассинхрон иконок плеера (в мини-плеере одна, в развёрнутом другая) - всё состояние плеера теперь живёт в одном месте, багу физически негде появиться
-
Лайки/дизлайки: если сервер отбивал запрос, сердечко всё равно оставалось закрашенным. Теперь ошибки не глотаются и состояние откатывается
-
Создание плейлистов: если бэк отвечает 502 (его любимое), приложение больше не паникует, а ждёт и проверяет - плейлист обычно всё равно создаётся, просто медленно
-
Мозаика плиток: из-за отрицательного hashCode почти все плитки были одной пропорции. Теперь мозаика снова мозаика
Улучшили
-
Кнопки переименования и удаления плейлиста спрятаны в меню с тремя точками, шапка стала чище
-
Тосты по-человечески: "Плейлист создан", "Добавлено", а при ошибке - реальный текст от сервера, а не вечное «нет сети»
-
Список плейлистов обновляется мимо кеша - созданный плейлист появляется сразу, удалённый сразу пропадает
И ещё...
-
Включён R8: релизный APK меньше, код обфусцирован
-
Запрещён бэкап данных приложения - session_id больше не утекает в облачные бэкапы
-
Закрыт path traversal в загрузках (кривое имя трека могло писать файлы куда не надо)
-
Убраны гонки при параллельных загрузках треков
-
Дозаполнены переводы во всех 8 языках через AI😎