Пишу сервис для общения: работа над контекстным меню
Удалось выкроить время и вернуться к проекту. Доработал исчезновение дат, которые перекрывают сообщения. Тут можно видеть как даты исчезают и появляются:
Но даты, на самом деле, были доработаны давно. На днях исправлял ошибки (или по-заморски "баги") с анимациями:
1) Обработал разные ситуации промотки к сообщению. Теперь анимаци промотки остановится, если во время промотки к сообщению нажать на экран.
2) Доработал контекстное меню: убрал плашку с эмоджи для сообщений, которые не были отправлены. Учел отсутствие этой плашки при позиционировании контекстного меню.
3) Встретился со старым знакомым, пару лет его не видел 🙂 Показал приложение на телефоне (без серверной части, то есть по сути нерабочее), он потыкался и ему стало интересно помочь с обратной связью. На данный момент набралось более 250 человек, которым данный проект кажется интересным 🙂
Тут скрины разного позиционирования контекстного меню (с плашкой выбора эмоджи и без):



В процессе работы над отправкой эмоджи, пришлось вернуться к серверной части и поправить код обработки эмоджи. Исправил ситуацию, которая положила бы сервер полностью 😂 Да-да, глянул незамыленным глазом и заметил 😂
Сейчас работаю над механизмом отправки эмоджи. Если быть точнее, унифицирую/дорабатываю систему отправки событий на сервер. А эмоджи будет частным случаем работы данной системы доставки и синхронизации событий.
Пока вроде бы это все новости о сервисе для общения.
--
По вечерам разрабатываю сервис для общения на Go & Flutter. Кому интересно, можете подписаться куда-нибудь на меня, попробуете его в числе первых. Постепенно буду продолжать делиться успехами разработки сервиса.
Не зайти в Telegram без другого Telegram
Сегодня с утра на компе Телеграмм вдруг запросил перепройти авторизацию, сказав при этом что отправил код в свой же чат на другом устройстве. Кроме компа он установлен только на ноутбуке, который несколько месяцев выключен был. Включаю ноутбук - там тоже просит авторизацию. Устанавливаю Телегу на телефон (ранее только на компе пользовался) и что мне там говорят? Правильно - смотрите в чате на другом устройстве. Спасибо Паше Дурову за надежный как швейцарские часы сервис.
Па-ра па-ра пам, пу-у.
Не просто замена WhatsApp: юридический и технический разбор, почему мессенджер «Макс» нужно удалять
Зачем на самом деле нужен мессенджер «Макс» и почему его надо удалить:
Тотальная слежка: Приложение намертво связано с Госуслугами и биометрией. Все чаты, звонки и файлы привязаны к вашему паспорту. Минцифры и ФСБ видят весь ваш цифровой профиль.
Шпионский статус: Летом Apple и Google полностью удалили «Макс» из App Store и Google Play из-за официальных обвинений в кибершпионаже. Мировые гиганты признали его опасным.
Обход защиты смартфона: Из-за удаления из сторов его заставляют качать через APK или RuStore. Это позволяет приложению обходить защиту Android/iOS и шпионить за другими процессами в телефоне.
Цифровой загон: Telegram уже заблокирован, WhatsApp под угрозой. «Макс» работает через «белый список» Минцифры. Нас принудительно загоняют туда, чтобы полностью изолировать рунет и отключить VPN.
Принуждение незаконно: Руководство школ и офисов ссылается на закон № 41-ФЗ. Но этот закон запрещает иностранный софт организациям, а не обязывает граждан ставить госсофт на личные телефоны. По ст. 23 Конституции РФ, требовать установку на ваш личный смартфон никто не имеет права. Нет служебного телефона — нет «Макса».
Вывод: Удаляйте «Макс» с личных устройств. Для работы используйте только веб-версию на ПК.
Опрос про мессенджеры
Как думаете, разблочат Телегу?
Пишу сервис для общения: оптимизация
На днях решил проверить как приложение будет работать на iPhone 16 и древненьком Huawei P30 Lite. На айфоне более-менее, проблем с производительностью замечено не было (в релизной/продакшен сборке). А вот Huawei P30 Lite начал агитировать в пользу проведения основательной (ну или хотябы какой-то) работы по оптимизации приложения.
Подзабросил оптимизацию, в основном перерисовывал интерфейс методом "перерисуй вообще все сейчас". На мобильных устройствах отрисовка так не работает 😂
В Total Reload занимался программной частью и оптимизация по рендеру сводилась к GPU Instancing, Dynamic/Static Batching, LOD (моделе и шейдеры), render pipeline, настройка количества пост-эффектов и их группировка в одном шейдере. Это основные моменты по оптимизации. В итоге частота кадров 30-60 fps в зависимости от видеокарты:
В flutter не обнаружил почти ничего из того, что использовал в игровой разработке. Во всяком случае из всего вышеперечисленного "напрямую" ничего не использовал. Потому в первое время делал setState() (обновление состояния/внешнего вида виджета на экране) максимально часто. В итоге получил довольно тормознутый интерфейс.
Мощнейшая оптимизация
1) setState теперь стараюсь не вызывать, пытаюсь всюду использовать notifier.
2) обновляю только то, что нужно обновить.
Пожалуй, это вся оптимизация. Этого хватило чтобы интерфейс окна переписки стал отзывчивым. Пришлось немного 😂 переписать код, но с кем не бывает.
Сегодня добавил кнопку промотки истории переписки к самому началу:
Кнопка исчезает/появляется в нужный момент. Промотку можно остановить, если каснуться экрана в процессе промотки. Но это все из области "само собой разумеющееся".
Уже не первый раз спрашивают когда выложу в публичный доступ. Затрудняюсь сказать. Работаю, результаты видите. Можете по постам предположить дату выпуска первой версии 😅 Не могу озвучивать точные сроки тк могу их нарушить.
Еще иногда спрашивают примерно такие вопросы:
Мне неважно сколько человек им будет пользоваться. На данный момент делаю проект для себя, друзей и подписчиков. Не думаю, что оно как-то коммерциализируется, тем более само собой. В любом случае в этом году у меня совершенно нет времени заниматься раскруткой сервиса для общения. А вот работу забрасывать не буду. Скажу больше, во что бы то ни стало в свободные вечера буду заниматься доработкой и улучшением сервиса до выпуска, а после выпуска его поддержкой :)
Продолжаю работу над контекстым меню и взаимодействием с сервером :)
--
По вечерам разрабатываю сервис для общения на Go & Flutter. Кому интересно, можете подписаться куда-нибудь на меня, попробуете его в числе первых. Постепенно буду продолжать делиться успехами разработки сервиса.
Немецкая полиция читает WhatsApp и Signal, хотя суд это запретил
Журналисты получили секретный документ Таможенного криминального управления Германии, это ZKA, служба вроде таможни, которая ведёт свои расследования. И оказалось, что немецкая полиция месяцами читает переписку в WhatsApp и Signal, при этом шифрование остаётся целым и никто ничего не взламывает.
Метод называется клонированием аккаунта, и работает он так. У мессенджеров есть WhatsApp Web и Signal Desktop, чтобы читать чаты на компьютере. Следователи через них подключают к твоему аккаунту свой компьютер, и сервис считает его законным устройством и шлёт туда расшифрованные сообщения.
Подтвердить подключение можно, если ненадолго заполучить телефон, перехватить SMS-код или развести человека на фишинг. А дальше вообще неприятно. В одном случае пара пришла в полицию как свидетели, добровольно отдала телефоны, чтобы показать сообщения от дочери, и пока телефоны были у полицейских, те тайно активировали WhatsApp Web на служебном компьютере.
Тонкость тут в согласии, которого никто не давал. Пара отдала телефоны на пару минут показать одни сообщения, а получилось постоянное подключение к их аккаунтам. Согласие было на «посмотреть здесь и сейчас», а не на «читать всё дальше».
Тестировать это начали ещё в конце 2023, а с 1 августа 2025 сделали постоянным инструментом. При этом Signal вообще может подтянуть переписку за последние 45 дней. Обнаружить слежку трудно, но след остаётся: в настройках есть раздел про связанные устройства, там и видно чужой сеанс.
Настораживает ещё и то, что суд уже сказал «так нельзя», а ведомство продолжило. В январе 2026 Верховный суд Германии назвал это тяжёлым вмешательством, а через месяц ведомство сослалось на решение пятилетней давности и продолжило.
Пишу сервис для общения: взаимодействие с сообщениями
Добавил контекстное меню в сервис для общения 🙂
В первую очередь хотелось бы поблагодарить спонсора контекстного меню, а если точнее, то этого разработчика: Dexterfury. Его проект был взят в качестве основы: https://github.com/dexterfury/flutter_chat_reactions




Болванка с гитхаба немного доработана: переделаны анимации, доработаны кнопки, немного изменена механика взаимодействия с сообщениями и вот что получилось:
Думаю получилось неплохо, пока кажется "работает удобно" 🙂
Кстати, исправил выделение сообщений. Ранее при клике на сообщение на который был дан ответ оно выделялось вот такой серой полосой:
Полосу убрал, сейчас сам "бабл" вспыхивает и меняет цвет (на видео выше видно).
Контекстное меню и выбор действий с сообщениями добавил. Осталось (😂, да, осталось) нужно подключить сетевое взаимодействие. Напомню, севрер уже все поддерживает, нужно чтобы клиент корректно отправлял команды на сервер и обрабатывал его ответы. Буду работать над этим 🙂
--
По вечерам разрабатываю сервис для общения на Go & Flutter. Кому интересно, можете подписаться куда-нибудь на меня, попробуете его в числе первых. Постепенно буду продолжать делиться успехами разработки сервиса.




