Info

Download .APK (59.6 MB)

Source on GitHub

https://github.com/grishka/TelegramAndroidContests/tree/contest_nov2021_round2

Testing and Issues

You can test this app and submit issues during the testing period of the November 2021 Android Contest, Round 2 contest.

Entries with serious issues will not be able to win the contest, but even minor issues might be important for overall results.

Voting

24

Comments

- Задание выполнено полностью.
- Анимации могут незначительно отличаться от макетов.
- На слабых устройствах анимации эффектов могут тормозить. Так и не понял, как сделать, чтобы оно пропускало кадры, если не успевает, а не показывало все последовательно, но медленнее.
- Сюда же — не смог разобраться, как правильно поставить колбэк на завершение анимации, поэтому они улетают в кнопку по длительности, на слабых устройствах может показаться, что улетают раньше времени.
- Двойной тап задерживает открытие меню. По-другому это не сделать. Можно отключить двойные тапы в отладочных настройках.
1
You have not added any comments yet...
by time

Issues

ŭ
В основном всё работает, но есть баги на моём устройстве:
Не вижу реакции других пользователей у группах;
В приватных чатах отображается только сердечко, когда его ставишь. Другие реакции на отображаются под сообщением;
Не по центру реакции, когда они отображаются на весь экран, а с уклоном в левую часть экрана.
Samsung A50
Nice work Grishka. The app is snappy and fast and I didn't noticed any lags whatsoever. There were couple of minor issues (at least to my eyes) with placement of reaction animations, specially in channels' case, not sure it's by design (from Telegram team mockups) like this or it was not noticed by you.

1. When you react to a chanel post, since they are placed in far left corner (at least for first reaction or the most used one) the enlarged reaction animations is half way or by great percentage outside the frame of phone's screen. The reaction animation, is also placed on top of your chat/channel top bar, and even status bar of phone which to me looked bizarre.

2. Also while reacting to long posts you don't see the animation if you are not seeing the bottom of the post at that moment (which is nice to skip those long and not much pleasing animations 😅) but it might have slipped the design team's eyes.
Xiaomi Redmi Note 8 Pro, Brave Browser, Android 12 (AOSP)
And 3. Shouldn't the static emoji be shown after the animation is finished? While it's not the case, and static emojis are placed immediately after double tap or emoji selection while animation is being played on.

Again, thanks for your great work
Xiaomi Redmi Note 8 Pro, Brave Browser, Android 12 (AOSP)
Eager Cat Dec 7, 2021 at 19:48
It was just much easier to do it that way :)
Take a look at ChatMessageCell.java to understand my pain.
Анимация после установки реакции вылезает за пределы экрана.
Xiaomi Mi8 / Android 12
Eager Cat Dec 7, 2021 at 16:07
Так и должно быть, она показывается над кнопкой.

Икрамк.
Это, наверно, фича бэка, но сообщение из канала в привязанной групп отображает аватарки последних пользователей.
SGS S9
1
Если оставить реакцию на медию (фото, аудио, видео и тд), то в привязанной группе она не будет отображаться, хотя в комментариях будет
SGS S9
Если перейти в инфо пользователя через меню на чипе лонг-тапом, то назад уже не выйти

апдейт - я бы сказал, что апп либо виснет или падает в фоне, юай не реагирует никак
SGS S9
1
Краш, если попробовать перейти в инфо пользователя, поставив лайк в медию, еще недогруженную до сервера
SGS S9
2
Eager Cat Dec 7, 2021 at 21:52
Блин, точно, сообщения же могут быть ещё не отправленными... 🙈
В целом есть немного особенностей анимации, но работа наиболее приближенная к макетам и заданию
SGS S9
Отмена/изменение реакции не меняет счетчик реакций. Если лейаут расширился от новой реакции, то его отмена назад высоту не меняет ячейки
SGS S9
D
Deleted Account Dec 7, 2021 at 23:00
В каналах на сгруппированных файлах реакция не проставляется пока не перезаймешь в чат, просто рисуется анимация по центру экрана
Mi11 Lite
Eager Cat Dec 9, 2021 at 04:59
Продакшен сервер как-то криво работает с реакциями, лучше на тестовом смотреть.
D
Deleted Account Dec 7, 2021 at 23:05
В остальном очень крутая работа!
Mi11 Lite
D
Deleted Account Dec 7, 2021 at 23:09
После удаления или закрепления сообщения с реакцией в канале, крашится приложение при переходе в раздел "недавние действия"

Anyway, nice work Grishka!
Mi11 Lite
2
В случае, если сообщение является групповым и под ним есть реакция. Начинает судорожно обновляется экран, показатели fps подлетают сразу до 60. GPU просто в шоке от работы, загрузка в пределах 44-65 процентов GPU. И это при статической картинке на экране. В НЕ групповых сообщениях такой проблемы нет.
Samsung A51/Android 11
1
Анимации реакций могут мерцать или не воспроизводиться на старых девайсах. Приятный сабмишн энивей.
Samsung Galaxy S5
Fair Quokka Dec 10, 2021 at 18:20
Поздравляем с победой! Конкурсное задание выполнено полностью. Из положительных сторон работы отметим общую плавность анимаций, уделенное внимание к деталям, особенно – при реализации третьего задания. Кроме того, работа наиболее близка к предоставленному дизайну.

Обнаруженные недоработки:

Приложение перестает отвечать на касания до перезапуска, если вернуться к списку чатов жестом смахивания назад, в момент, когда у пользователя развернут список прореагировавших пользователей. Приложение вылетает при последовательном выключении и включении реакций в сообществе, а также в иных ситуациях, описанных ниже другими участниками. Положение полноэкранной анимации установки реакции может быть оптимизировано.

1. Установка реакции
– Анимация перехода миниатюры эмодзи в блок сообщения может не соответствовать предоставленному дизайну – иногда окончание финального цикла анимации некорректно, эмодзи переносится не в финальную точку, вместо этого улетая в центр.
– Хвостик у блоков исходящих и входящих сообщений смаргивает при установке реакции. 
– Область блока сообщения может ненужным образом расширяться при установке одиночной реакции в личных беседах, сдвигая весь интерфейс целиком. 
– При воспроизведении анимации установки 👍 заметно снижение производительности устройства, анимация проигрывается с ощутимым рывком.
– При установке реакции по кнопке в каналах и группах счетчик реакций может не обновляться.
– Ширина меню установки реакции при одном эмодзи не соответствует предоставленному дизайну.

2. Быстрые реакции
Функциональность реализована в соответствии с требованиями конкурсного задания и предоставленным дизайном.

3. Просмотр реакций
– Кнопки установки реакций обрезаются для фильтра в окне списка прореагировавших пользователей.
– Фотографии пользователей могут обрезаться в кнопках реакций. 

4. Отображение реакций для разных типов контента
Если в канале пользователь устанавливает реакцию на сообщение с кнопкой перехода к комментариям, надпись "Leave a comment" пройдет сквозь подпись автора поста (например, при установке и отмене реакции).

Продолжение...
Samsung Galaxy A51 (Android 11); Xiaomi Redmi Note 8 Pro (Android 10); Samsung Galaxy S10 (Android 11).
20
Fair Quokka Dec 10, 2021 at 18:20
5. Фотографии пользователей в группах
В некоторых случаях приложение отображает две миниатюры фотографий вместо ожидаемых трех. Конкретного пути воспроизвести проблему обнаружить не удалось – зачастую она проявлялась на сообщениях с двумя реакциями двух различных типов.

6. Определение набора реакций для групп и каналов
– Приложение вылетает при последовательном выключении и включении реакций в сообществе.
– Список отключенных эмодзи запоминается при выключении и повторном включении реакций.
– При возвращении в меню группы счетчик доступных реакций обновляется с задержкой.

7. Отмена реакции
– Отметим внимание к деталям анимации отмены реакции в приватных чатах. 
– Как и при установке реакций, их отмена влечёт к смаргиванию хвостиков блоков сообщений и изменению размеров блоков, глобально двигающих интерфейс.
– На некоторых альбомах из медиа не происходит перестроение сущности альбома при отмене реакции – внизу продолжает оставаться пустое пространство.
– В части случаев повторная установка реакции на альбомах может привести к некорректному отображению кнопки реакции. 
Samsung Galaxy A51 (Android 11); Xiaomi Redmi Note 8 Pro (Android 10); Samsung Galaxy S10 (Android 11).
20
Nobody added any issues yet...