Skip to content

Releases: joycecurcirt539-dot/Mirrly-TG-Proxy

Mirrly TG Proxy — Релиз v1.1.0

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 11 Aug 23:21

Исправление цикличных предложений обновления, сброс кеша ETag и сжатие R8.


1. Контрольные отпечатки SHA-256

  • app-universal-release.apk SHA-256: 160C709A24D6F75989AF3AFB571BA2D7CB36638CC8E90F6A82B9914F782CE8B1
  • app-arm64-v8a-release.apk SHA-256: 9E4841DDDB0ACD15040712333F21D06183355717C24126ADCD1E4865CC6A7494
  • app-armeabi-v7a-release.apk SHA-256: 697D12CAAA84CBDABA0B95DF0C83808F9111C25E593DBFB6FFDAC002B498756F
  • app-x86_64-release.apk SHA-256: F570B858045A75F4A021819FF1317C541EBA0125B0257DF27CBA34DEF23ED2E8
  • app-x86-release.apk SHA-256: 82825D0E1740A3AC658BCADEAD467B98E68721CDD902F67FE398ED73C6AFA81F
  • SHA-256 подписи (Release): 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

2. Назначение установочных пакетов (APK)

  • app-universal-release.apk: Универсальная сборка. Содержит нативные библиотеки под все архитектуры (ARM64, ARMv7, x86, x86_64). Гарантированно подходит для любого Android-устройства. Единый основной файл для автообновлений и публикации.
  • app-arm64-v8a-release.apk: Сборка ARM64. Оптимизирована для большинства современных смартфонов и планшетов (64-битные процессоры ARM). Обладает меньшим размером.
  • app-armeabi-v7a-release.apk: Сборка ARMv7. Для старых 32-битных Android-устройств.
  • app-x86_64-release.apk: Сборка x86_64. Для 64-битных эмуляторов Android (Android Studio, LDPlayer, BlueStacks) и устройств на базах процессоров Intel/AMD.
  • app-x86-release.apk: Сборка x86. Для 32-битных эмуляторов Android x86.

3. Ключевые изменения

Модуль обновлений и валидация (UpdateManager, UpdateScreen, NotificationHelper)

  • Ликвидация зацикливания предложений обновиться:
    • Реализовано автоотслеживание смены установленной версии приложения last_installed_app_version. При обновлении версии на устройстве прошлые ETag-кеши (KEY_CACHED_ETAG), сэкономленные ответы KEY_CACHED_VERSION и данные уведомлений сбрасываются автоматически.
    • Устранен баг, при котором при HTTP 304 Not Modified приложение повторно показывало требование обновиться до текущей же версии 1.1.0.
  • Автоматическая очистка системных уведомлений:
    • Добавлена функция NotificationHelper.cancelUpdateNotification(context). При установке актуальной версии или отсутствии новых релизов уведомление из шторки Android принудительно удаляется.
  • Динамическое состояние экрана обновлений (UpdateScreen):
    • Экран обновлений переведен на разграничение статуса: если текущая версия приложения актуальна, отображается бейдж УСТАНОВЛЕНА АКТУАЛЬНАЯ ВЕРСИЯ и плашка ✓ У вас установлена последняя официальная версия, а главная кнопка переключается на «Проверить обновления». Кнопка «Скачать и установить» рендерится исключительно при наличии более новой версии.

Оптимизация сборки и размер (R8 & Baseline Profiles)

  • Агрессивная оптимизация байткода (R8 / ProGuard):
    • Настроена конфигурация правил R8 (-optimizations) для глубокого сжатия и минификации кода без нарушения работоспособности JNI и криптографии.
    • Устранена генерация неиспользуемых метаданных библиотеки Kotlin.
  • Профили предварительной компиляции (Baseline Profiles):
    • Добавлен файл baseline-prof.txt для ускорения AOT-компиляции ART на стороне системы. Снижено время холодного запуска приложения.
  • Сокращение размера пакетов:
    • Размер универсальной сборки оптимизирован до ~7.1 МБ, а сборки arm64-v8a — до ~4.8 МБ.

Сетевой стек и обработка протоколов (MTProto & SOCKS5)

  • Низкоуровневая оптимизация буферов (MsgSplitter, TgWsBridge, Socks5WsBridge):
    • Реализована прямая обработка срезов байтовых массивов по оффсету и длине без лишних аллокаций ByteArray при разделении пакетов frame-уровня.
    • Ликвидированы фрагментации памяти и частые вызовы Garbage Collector при высокоскоростной передаче файлов.
  • Устойчивость пула веб-сокетов (WsPool):
    • В область корутин пула WsPool встроен SupervisorJob(). Ошибка отдельной корутины восполнения соединений больше не отменяет работу родительского контекста.
  • Корректность состояний LocalProxyServer:
    • Синхронизирован статус isNativeRunning в режиме SOCKS5 для предотвращения фиктивных вызовов нативных библиотек.

Фоновые процессы и UI-слой

  • Потокобезопасный AppLogger:
    • Логирование переведено на асинхронный кольцевой буфер, исключающий блокировку потока обработки сообщений при непрерывной записи событий.
  • Устранение утечек подписок в Jetpack Compose:
    • Все подписки на StateFlow и каналы сетевой аналитики увязаны с DisposableEffect и корректным циклом жизни экранов (HomeScreen, HistoryScreen, LogsScreen, UpdateDialog).
  • Оптимизация рендеринга CyberEnergyCanvas:
    • Анимация фонового холста автоматически приостанавливается, когда экран не активен или находится в фоновом режиме, сохраняя ресурсы GPU и заряд аккумулятора.

Mirrly TG Proxy — Релиз v1.0.9

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 10 Aug 23:19

Реализована поддержка SOCKS5, туннелирование WSS, полноценный парсинг GitHub Markdown для диалогов обновлений и 120 FPS оптимизация.


1. Контрольные отпечатки SHA-256

  • app-release.apk SHA-256: E98465D8B5F0C9784AE091FE6B13B4496671023BB737B18E8AC505722098585E
  • SHA-256 подписи (Release): 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

Список изменений в версии 1.0.9 (в сравнении с 1.0.8)

1. Парсинг GitHub Markdown спецсимволов в диалоге обновления

  • Полноценный парсер GitHub Markdown (FormattedChangelogBody): В окне обновления реализован автоматический разбор спецсимволов заголовков (#, ##, ###), списков (*, -, ), полужирных заголовков (**Title**: Description) и разделителей (---).
  • Структурированные стеклянные карточки: Каждый раздел описания релиза автоматически группируется в отдельную прозрачную стеклянную карточку (Color.White.copy(alpha = 0.04f)) с неоновыми заголовками и цитатами.
  • Специальные карточки для SHA-256 и отпечатков: Блоки с отпечатками ключей окрашиваются в янтарный стеклянный стиль (Color(0xFFFF9E00).copy(alpha = 0.08f)).

2. Плавный скролл с виньеткой по краям (.fadingEdges)

  • Виньетка с плавным растворением: Весь список изменений прокручивается с мягким верхним и нижним растворением (.fadingEdges(topFadeHeight = 32.dp, bottomFadeHeight = 64.dp)).
  • Свободное пространство над кнопками: Отступ снизу увеличен до 180 dp, благодаря чему прокручиваемый текст растворяется в виньетке до кнопок и никогда не перекрывается плавающими кнопками.

3. 120 FPS Оптимизация диалогов

  • Устранение повторного вызова размытия (LaunchedEffect вместо SideEffect): Зафиксирован системный размытый фон (FLAG_BLUR_BEHIND), убрана нагрузка на WindowManager.
  • Нулевые GC-аллокации: Убрано пересоздание массивов при отрисовке виньетки.

4. Редизайн экрана «История сессий»

  • Прозрачные стеклянные плашки (Glassmorphic Cards): Карточки сессий заменены на прозрачные стеклянные контейнеры (Color.White.copy(alpha = 0.035f)).
  • Анимированный индикатор активной сессии: Активная сессия подсвечивается изумрудным пульсирующим LED-индикатором.

5. Реализация SOCKS5 Engine и WSS Tunneling

  • Стабильная работа SOCKS5: Исправлен жизненный цикл метода startSocks5Engine в LocalProxyServer.kt.
  • Единое туннелирование WSS Cloudflare Worker: Добавлен единый формат подключения wss://$cfDomain/tcp?target=$dcIp:443.

Mirrly TG Proxy — Релиз v1.0.8

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 10 Aug 03:14

В v1.0.8 реализован умный таймер сна с автоотключением прокси, единая центральная капсула времени, обновленный прозрачный дизайн окон и вкладки обновлений, умный fallback с приоритетом WSS и предпроверка цифровой подписи.


1. Контрольные отпечатки SHA-256

  • app-release.apk SHA-256: 38190A10400ED75C35732D51C25FD6149CC87FF588FD37A1EDE243A7F1FA5921
  • SHA-256 подписи (Release): 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

2. Ключевые изменения и улучшения

Редизайн окна обновлений и диалога таймера сна

  • Единый Frosted Glass стиль: Всплывающее окно таймера сна переработано в едином прозрачном стиле с размытием фона (blur 70), аккуратными бейджами и парящими кнопками действий.
  • Прозрачный дизайн: Полностью удалены непрозрачные подложки со всех карточек, панелей и кнопок во вкладке обновлений. Интерфейс переведен на AMOLED-прозрачный стиль со светящимися контурами.
  • Frosted Glass Header & Light Sweep: Добавлен закрепленный полупрозрачный верхний бар с градиентным размытием, эффекты бегущего луча и каскадные анимации появления элементов.
  • Интерактивный SHA-256: Отпечаток подписи теперь можно скопировать в буфер обмена в один клик.
  • Мгновенная отмена загрузки: Исправлена кнопка «Отменить загрузку» — теперь она мгновенно прерывает сетевой запрос, закрывает потоки и удаляет временный файл без ошибок.

Таймер сна и единая капсула времени (Sleep Timer & Capsule)

  • Единая центральная капсула времени: Время подключения и статус таймера сна объединены в компактную центральную капсулу [ ● 00:14:22 │ ⏱ 00:45:10 ], плавно расширяющуюся при активации таймера.
  • Автоматическое выключение по таймеру: Возможность установить таймер сна на 15 мин, 30 мин, 45 мин, 1 час, 2 часа, 4 часа или настроить свой интервал (до 6 часов). По истечении времени прокси плавно останавливается, освобождая память и экономя заряд батареи.
  • Интерактивные уведомления с предупреждениями: За 15, 10 и 5 минут до выключения приходят уведомления в шторку с кнопками быстрого продления (+15 минут) и отмены в один клик.
  • Индикация обратного отсчета: Оставшееся время выводится на главном экране в капсуле времени и в фоновом уведомлении службы.

Лаконичный интерфейс и адаптивность (DPI/PPI)

  • Чистый статус без технического шума: С главного экрана убраны сбивающие с толку сырые счетчики сокетов (8/16) и внутренний адрес порта (127.0.0.1:1443). Вместо них отображается понятный и эстетичный статус соединения: Cloudflare WSS • Защищено. Вся детальная диагностика доступна в разделах «Журнал событий» и «Настройки».
  • Устранение наложения элементов: Полностью переработана геометрия главного экрана (HomeScreen). Центральная кнопка питания переведена на гибкое распределение пространства (weight(1f)), что исключает наложение таймера, статуса и графиков на кнопку на экранах с малой высотой или увеличенным масштабом интерфейса.
  • Динамическое масштабирование: Диаметр кольца и размеры элементов плавно адаптируются под компактные экраны (235.dp → 205.dp → 175.dp).
  • Защита от переноса заголовков: Для всех экранов приложения зафиксирован однострочный вывод заголовков с плавным Ellipsis.

Сетевой стек и умный Fallback

  • WSS — всегда абсолютный приоритет: Fallback на прямой TCP больше не может застрять. Каждое новое подключение Telegram строго инициируется через Cloudflare WSS.
  • Мгновенный сброс и прогрев пула при смене сети: При выходе из зоны отсутствия связи или переключении Wi-Fi / LTE компонент NetworkObserver мгновенно очищает протухшие TCP-сессии (wsPool.clear()) и запускает фоновый прогрев сокетов к основным дата-центрам (DC2 и DC4).
  • Fast-Fail Direct TCP (2.5 с): Если WSS недоступен, прямой TCP подключается с быстрым таймаутом 2.5 секунды (вместо 60–120 с), мгновенно выявляя блокировку ТСПУ и не подвешивая работу приложения.
  • Zero-Latency Health Check (isAlive): Мгновенная проверка живости сокета перед выдачей из пула исключает передачу разорванных соединений.

Безопасность и защита системы обновлений

  • Предварительная проверка цифровой подписи APK: Перед запуском установки скачанный файл проверяется через SignatureVerifier.verifyApkFile(). Файлы без официальной подписи разработчика немедленно уничтожаются.
  • Anti-DoS и лимит размера: Ограничение размера файла обновления (до 100 МБ) с защитой от истощения трафика и памяти.
  • Валидация пакета: Проверка целостности структуры Android APK перед передачей в системный инсталлятор.

Прекращение публикации Debug-сборок (Безопасность)

  • В целях безопасности пользователей публикация файлов app-debug.apk полностью прекращена. Все релизы поставляются исключительно в виде оптимизированных и криптографически защищенных app-release.apk.
  • Это исключает возможность подмены приложения сторонними вредоносными сборками с общедоступным тестовым ключом Android, предотвращает несанкционированный доступ к оперативной памяти через отладчик и гарантирует бесшовную работу встроенного верификатора обновлений.

Mirrly TG Proxy — Релиз v1.0.7

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 04 Aug 21:55

Mirrly TG Proxy — Релиз v1.0.7

В v1.0.7 добавлена история сессий с аналитикой, реализован прозрачный бескарточный дизайн диалогов (Pure Blur UI), переработан транслятор логов (HumanLogTranslator) с устранением ошибок перевода IP и портов, выполнен полный юридический перевод лицензии GNU GPLv3 с выравниванием нумерации (разделы 0–17), обновлены условия использования и полностью удалены эмодзи.


1. Контрольные отпечатки SHA-256

  • app-release.apk SHA-256: BC6A13959C51D31FE8093F3BF8CDBCE9026AF42946791598FC996F45837E78F2
  • app-debug.apk SHA-256: EBD93024B375258B2171CD3E62A453AECFC63969F6B48227A15DA7C6B05DD2DB
  • SHA-256 подписи (Release): 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

2. Полный список изменений в v1.0.7

  • Новая вкладка «История сессий» (HistoryScreen): Выделенный автономный экран истории работы прокси-сервера с поддержкой нативных анимаций переходов.
  • Быстрый переход в левом верхнем углу: Кнопка переключения во вкладку истории размещена в верхнем левом углу, сразу правее кнопки «Логи».
  • Векторная иконка циферблата (ic_history.xml): Авторская векторная иконка в стиле минималистичной линии (1.5dp stroke).
  • Сводная панель аналитики: Автоматический подсчет общего количества сессий, суммарного времени работы прокси и объемов переданного трафика.
  • Живая карточка активной сессии: Отслеживание текущего подключения в реальном времени с пульсирующим статус-индикатором, подсчетом аптайма, переданных байт (↓ / ↑), пиковой скорости и активных сокетов.
  • Персистентный менеджер SessionHistoryManager: Автоматическое сохранение до 100 сессий в энергонезависимом хранилище с обработкой незавершенных сессий при перезапуске приложения.
  • Безопасная очистка: Кнопка сброса истории с диалоговым окном подтверждения.
  • Полнотекстовый юридический перевод лицензии GNU GPLv3 (LicenseScreen): Ликвидирован разрыв нумерации с Раздела 11 на 15, добавлены 4 утерянных раздела (12, 13, 14, 17), выровнена 18-раздельная структура (0–17) с преамбулой и реквизитами в 100% соответствии с английским оригиналом.
  • Юридическое обновление Условий использования (TermsScreen): Исправлены ошибки перевода («Услуги» -> «Условия»), полностью выровнена 6-раздельная структура с англоязычным оригиналом, переработаны неточные формулировки в TERMS_OF_USE.md и удален машинный стиль.
  • Очистка интерфейса и отказ от эмодзи: Удалены плашки «(Полная)», «(Full 1:1)», «ПОЛНЫЙ ОФИЦИАЛЬНЫЙ ТЕКСТ ЛИЦЕНЗИИ», «Полный перевод», а также полностью удалены эмодзи флагов с кнопок выбора языка.
  • Полная переработка транслятора логов (HumanLogTranslator): Исправлен критический баг «запущен на порту 127» с переходом на точный парсинг IP:Port (127.0.0.1:1080), удалена подмена подстрок («Франкенштейн-строк»), реализованы точные русские переводы для ошибок SHA-256, Cloudflare, WakeLock, C++ JNI модуля mirrly_sec и логирования ProxyForegroundService.kt.

Mirrly TG Proxy — Релиз v1.0.6

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 02 Aug 07:33

В v1.0.6 реализована прямая загрузка и установка обновлений внутри приложения без перехода в браузер, выделенный экран обновлений UpdateScreen и 1-в-1 парсер разметки GitHub Markdown.


1. Контрольные отпечатки SHA-256

  • app-release.apk SHA-256: F1548CB762EC610BB8AA3A03A37EB43C9B5A01A01919CDD1ED1CF35FCDFDBE76
  • app-debug.apk SHA-256: A0D1A51E2DE98CC021E42EDD4BA6B732B8C72BA58E9726308C4031EFE236A47D
  • SHA-256 подписи (Release): 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

2. Полный список изменений в v1.0.6

  • In-App Автообновления (Direct APK Installer): Прямая загрузка app-release.apk с индикацией прогресса (МБ, %) и автоматический вызов установщика пакетов Android.
  • Проверка целостности SHA-256: Автоматический расчёт и сверка SHA-256 хэша скачанного APK с официальными отпечатками релиза перед запуском установки.
  • Экран релиза UpdateScreen: Создан полноценный интерфейс просмотра релиза, замещающий авто-всплывающие модальные окна.
  • 1-в-1 GitHub Markdown: Полный рендеринг спецсимволов GitHub (заголовки, блоки кода, списки, цитаты и ссылки).
  • Индикатор отклика Telegram: В уведомлении фоновой службы в реальном времени выводится статус доступности серверов Telegram (Telegram: Доступен).

Mirrly TG Proxy v1.0.5.1

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 02 Aug 06:50

1. Подлинность сборки и контрольные отпечатки SHA-256

Для обеспечения безопасности пользователей при использовании приложения Mirrly TG Proxy в версии v1.0.5.1 внедрена встроенная система проверки цифровой подписи (SignatureVerifier) и C++ NDK защиты.

Отпечаток ключа подписи разработчика (Keystore Fingerprint)

  • SHA-256 подписи: 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

Контрольные отпечатки SHA-256 файлов сборки (APK SHA-256 Checksums)

  • app-release.apk SHA-256: 1BE5C7D789CB1CE2A3C327F46B118651E3990581C4B788529AF074CD9E180446
  • app-debug.apk SHA-256: 6D0010759701DAF46DF32E6E97693046BA1430BAD261224BB8C672C00DCD6664

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


2. Полный список изменений и технических улучшений в версии v1.0.5.1

Безопасность и проверка целостности APK

  • Нативная верификация подписи в C++ NDK (mirrly_sec):
    Проверка отпечатков цифровой подписи перенесена на уровень нативного C++ кода с шифрованием эталонного SHA-256 ключа подписи (XOR 0x5A) для защиты от модификаций Smali.
  • Мульти-хеширование и верификация через GitHub API:
    Система автообновления (UpdateManager) поддерживает считывание нескольких контрольных отпечатков SHA-256 из описания релиза для корректной поддержки Release и Debug сборок.
  • Предупреждение о сторонних модификациях (UnofficialBuildDialog):
    Специальный диалог безопасности с официальным отказом от ответственности авторов за сохранность данных при использовании модифицированных сторонних клиентов.

Сетевой стек и оптимизация производительности

  • Оптимизация пропускной способности (High Throughput Download Buffer):
    Размер сетевого буфера сокетов оптимизирован до 2 MB в режиме Турбо для мгновенного стриминга 4K-видео и параллельной загрузки тяжелых медиафайлов Telegram.
  • Сквозное отключение задержек алгоритма Нагла (TCP_NODELAY):
    Применение опции TCP_NODELAY устраняет задержки отправки пакетов (40–200 мс).

3. Инструкция по самостоятельной проверке SHA-256 отпечатка APK

Вариант 1: Через утилиту keytool (из состава Java JDK / Android Studio)

keytool -printcert -jarfile Mirrly-TG-Proxy-v1.0.5.1.apk

В выведенной информации найдите строку SHA256. Она должна совпадать со значением:
97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

Вариант 2: Через apksigner (Android SDK Build-Tools)

apksigner verify --print-certs Mirrly-TG-Proxy-v1.0.5.1.apk

4. Сведения о сборке и системные требования

  • Название приложения: Mirrly TG Proxy
  • Идентификатор пакета: com.mirrly.tgproxy
  • Версия приложения: 1.0.5.1
  • Код сборки (versionCode): 7
  • Минимальная версия Android: Android 8.0 (API level 26)
  • Целевая версия Android: Android 14 (API level 34)
  • Архитектура: arm64-v8a, armeabi-v7a, x86, x86_64
  • Лицензия: GNU General Public License v3.0 (GNU GPLv3)
  • Официальный репозиторий: https://github.com/joycecurcirt539-dot/Mirrly-TG-Proxy

Mirrly TG Proxy v1.0.5

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 02 Aug 03:17

Mirrly TG Proxy — Официальное описание релиза v1.0.5

Подробный технический документ к релизу версии v1.0.5 для публикации в репозитории и на странице релизов GitHub.


1. Подлинность сборки и контрольные отпечатки SHA-256

Для защиты пользователей от несанкционированных модификаций, внедрения постороннего кода и переподписанных сторонних сборщиков в релизе v1.0.5 внедрена обновленная система встроенной проверки цифровой подписи (SignatureVerifier).

Отпечаток ключа подписи разработчика (Keystore Fingerprint)

  • SHA-256 подписи: 97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

Контрольные отпечатки SHA-256 файлов сборки (APK SHA-256 Checksums)

  • app-release.apk SHA-256: 7373EB9724CC1A35CD5DCDD9A9E8752B478EF2230CD74719C8065CD3FB16B9BA
  • app-debug.apk SHA-256: FEE90ECA2BCA5F046498923D64F7BB590969ABD289DE452E0A680CE2A55BF52E

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


2. Полный список изменений и технических улучшений в версии v1.0.5

Безопасность и проверка целостности APK

  • Мульти-хеширование и верификация через GitHub API:
    Система автообновления (UpdateManager) теперь поддерживает считывание нескольких контрольных отпечатков SHA-256 из описания релиза. Это исключает ложные срабатывания защиты при одновременно опубликованных Release и Debug вариантах сборки.
  • Автономная офлайн-проверка подлинности (Offline-Safe Verification):
    Проверка ключа подписи работает локально на устройстве без обязательного наличия интернет-соединения при старте приложения.
  • Предупреждение о сторонних модификациях (UnofficialBuildDialog):
    Разработан специальный модальный диалог безопасности с официальным отказом от ответственности авторов за сохранность данных при использовании модифицированных сторонних клиентов.

Сетевой стек и оптимизация производительности

  • Оптимизация пропускной способности (High Throughput Download Buffer):
    Размер сетевого буфера чтения/записи сокетов увеличен до базовых 128 KB по умолчанию и расширен до 2 MB (2 097 152 байт) в максимальном режиме, что обеспечивает мгновенный стриминг 4K-видео и параллельную загрузку тяжелых медиафайлов Telegram.
  • Сквозное отключение задержек алгоритма Нагла (TCP_NODELAY):
    Применение опции TCP_NODELAY для всех соединений устраняет задержки отправки пакетов (40–200 мс) при выгрузке медиа и отправке мгновенных сообщений.
  • Гибкие профили скорости и пула сокетов (SpeedPresets):
    Реализованы точно настроенные режимы энергопотребления и производительности:
    • Режим Турбо: максимальный пул из 16 горячих сокетов на каждый DataCenter (DC) и гигантский буфер 2 MB (2 097 152 байт).
    • Режим Баланс: оптимальный пул из 8 горячих сокетов на DC и увеличенный буфер 256 KB (262 144 байт).
    • Режим Эко: экономичный пул из 2 сокетов на DC и компактный буфер 32 KB (32 768 байт).
  • Резервный Kotlin-движок (TgWsBridge Fallback):
    В случае недоступности или сбоя инициализации нативного C/Rust модуля проксирование автоматически переключается на встроенный движок TgWsBridge с сохранением пресетов и буферизации сокетов.

Учет трафика и мониторинг

  • Двухуровневый счетчик (TrafficStats Fallback):
    Использование вызовов Linux-ядра Android (TrafficStats.getUidRxBytes / getUidTxBytes) для точного учета переданных байтов приложения.
  • Динамический перерасчет скорости:
    Ежесекундное обновление показателей входящей и исходящей скорости (Б/с, КБ/с, МБ/с) на главном экране и в уведомлении сервиса.
  • Автоматический сброс точки отсчета (resetBaseline):
    При каждом запуске прокси-сервера счетчик трафика текущей сессии сбрасывается в 0 Б.

Пользовательский интерфейс и UX

  • Эффекты размытия стекла (Glassmorphism):
    Интеграция системного размытия заднего плана (FLAG_BLUR_BEHIND, blurBehindRadius 55) для модальных окон и диалогов на устройствах под управлением Android 12+.
  • Подтверждение внешних ссылок (ExternalLinkConfirmDialog):
    Защитный диалог перед открытием внешних интернет-ресурсов для предотвращения случайных переходов.
  • Интерактивная плашка подлинности (OfficialSourceCard):
    Карточка подлинности вынесена в верхнюю часть экрана Настроек. Добавлено три компактные кнопки: Репозиторий, Релизы и Проверить хеш.
  • Диалог просмотра отпечатка подписи:
    Возможность просмотра точного SHA-256 хешкода установленного APK и его копирования в буфер обмена в один клик.

Интеграция с системой Android

  • Плитка быстрых настроек (Quick Settings Tile):
    Переключение состояния прокси-сервера в один клик из шторки уведомлений Android. Удержание плитки перенаправляет пользователя непосредственно в приложение.
  • Служба первого плана (ProxyForegroundService):
    Оптимизировано удержание процесса в памяти и обновление статуса в уведомлении Android.

3. Инструкция по самостоятельной проверке SHA-256 отпечатка APK

Вы можете самостоятельно проверить целостность скачанного APK-файла перед установкой.

Вариант 1: Через утилиту keytool (входит в состав Java JDK / Android Studio)

keytool -printcert -jarfile Mirrly-TG-Proxy-v1.0.5.apk

В выведенной информации найдите строку SHA256. Она должна совпадать со значением:
97:73:5C:0A:20:70:7F:D4:E4:BD:93:A2:D8:48:CA:91:9A:C5:40:45:4A:62:16:E8:CC:7D:43:4F:1F:9F:0A:96

Вариант 2: Через apksigner (Android SDK Build-Tools)

apksigner verify --print-certs Mirrly-TG-Proxy-v1.0.5.apk

4. Сведения о сборке и системные требования

  • Название приложения: Mirrly TG Proxy
  • Идентификатор пакета: com.mirrly.tgproxy
  • Версия приложения: 1.0.5
  • Код сборки (versionCode): 6
  • Минимальная версия Android: Android 8.0 (API level 26)
  • Целевая версия Android: Android 14 (API level 34)
  • Архитектура: arm64-v8a, armeabi-v7a, x86, x86_64
  • Лицензия: GNU General Public License v3.0 (GNU GPLv3)
  • Официальный репозиторий: https://github.com/joycecurcirt539-dot/Mirrly-TG-Proxy

5. Отказ от ответственности (Disclaimer)

Официальные сборки приложения публикуются исключительно в репозитории https://github.com/joycecurcirt539-dot/Mirrly-TG-Proxy. Разработчики проекта не несут ответственности за безопасность, конфиденциальность данных и корректность работы модифицированных сторонних клиентов, распространяемых на сторонних ресурсах.

Mirrly TG Proxy v1.0.4

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 30 Jul 22:42

Mirrly TG Proxy — Релиз v1.0.4

Официальное описание обновления версии v1.0.4 для репозитория и страниц релизов GitHub.


1. Главные изменения в правовом статусе и лицензировании

Переход с лицензии MIT на GNU General Public License v3 (GPLv3)

В версии v1.0.4 проект Mirrly TG Proxy полностью переходит с пермиссивной лицензии MIT на свободную копилефт-лицензию GNU General Public License v3 (GPLv3).

Причины перехода:

  1. Защита принципа Open Source (Copyleft):
    Предыдущая лицензия MIT позволяла сторонним разработчикам берет исходный код проекта, вносить минимальные правки и закрывать код в приватных коммерческих приложениях без обязательства возвращать улучшения общественности. Лицензия GNU GPLv3 устанавливает строгое правило Copyleft: любой форк, модифицированная версия или производный продукт ОБЯЗАНЫ распространяться с полностью открытым исходным кодом под той же лицензией GPLv3.
  2. Защита от коммерческой эксплуатации закрытых форков:
    GPLv3 гарантирует, что никто не сможет монетизировать закрытые сборки на базе кода Mirrly TG Proxy или продавать доступ к модифицированным APK-файлам с закрытым кодом.
  3. Защита от патентных претензий и блокировок:
    GPLv3 предоставляет пользователям и разработчикам ясную патентную лицензию и защищает код от попыток ограничить запуск программы на пользовательских устройствах.

2. Дополнительные условия использования (TERMS_OF_USE.md)

В корень репозитория добавлен документ Пользовательского соглашения (TERMS_OF_USE.md), действующий в соответствии с Разделом 7 лицензии GNU GPLv3.

Правила для сторонних магазинов приложений и каталогов (App Stores & Mirrors Policy):

Публикация, перезаливка и размещение бинарных сборок (APK) приложения Mirrly TG Proxy или его форков в любых сторонних каталогах ПО, магазинах приложений, на софт-порталах, файлообменниках и в Telegram-каналах РАЗРЕШЕНЫ И ПРИВЕТСТВУЮТСЯ для продвижения проекта, при соблюдении следующих простых условий:

  • Указание авторства: В описании публикации обязательно должно быть указано имя автора (R1Xern / Mirrly Dev) и прямая ссылка на официальный репозиторий GitHub (https://github.com/joycecurcirt539-dot/Mirrly-TG-Proxy).
  • Уведомление о лицензии: Наличие упоминания, что проект распространяется под лицензией GNU GPLv3.
  • Бесплатность (No Paywalls): Скачивание приложения должно оставаться 100% бесплатным для конечных пользователей. Запрещено взимать плату за скачивание оригинального или форкнутого APK-файла.
  • Безопасность сборки: Публикуемый APK-файл не должен содержать сторонних вредоносных модулей, скрытых майнеров или фишинга.

Запрет на вредоносный код и защита бренда:

  • Категорический запрет на малварь: Запрещается использовать код для распространения вирусов, майнеров, троянов и фишинга.
  • Защита наименований: Имена «Mirrly», «Mirrly Dev», «Mirrly TG Proxy» и логотипы являются интеллектуальной собственностью автора и не могут использоваться в названиях сторонних неофициальных форков.

3. Новые функции и улучшения в приложении

  1. Скрываемый режим интерфейса (Stealth UI Mode):
    • На главный экран добавлена возможность скрывать интерфейс приложения по нажатию на иконку глаза в верхней панели.
    • Восстановление видимости интерфейса осуществляется длительным удержанием пальца на экране или нажатием на плавающую кнопку.
  2. Новый экран «Условия использования» (TermsScreen):
    • В раздел настроек добавлена новая вкладка «Условия использования» с интерактивным просмотром правил, переключателем языков (Русский / English) и кнопкой копирования текста.
  3. Полный 1:1 текст GPLv3 в приложении:
    • Экран лицензии (LicenseScreen) обновлен: вместо краткого обзора в приложение встроен полный официальный текст GNU GPLv3 и полный перевод на русский язык.
  4. Оптимизация производительности:
    • Переработка макета главного экрана на Jetpack Compose с изолированными графическими слоями graphicsLayer для исключения лишних рекомпозиций.

4. Сведения о сборке

  • Версия приложения: 1.0.4
  • Код сборки (versionCode): 5
  • Режим сборки: Release APK
  • Совместимость: Android 8.0+ (API 26+)

Mirrly TG Proxy v1.0.3

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 30 Jul 03:50

Список изменений и улучшений (оптимизация и улучшение визуальной части приложения)

  1. Оптимизация аккумулятора и фонового режима (Battery Lifecycle Guard):
  • При сворачивании приложения или выключении экрана сенсоры гироскопа и цикл анимации приостанавливаются, обеспечивая нулевое потребление энергии в фоновом режиме.
  1. Жидкий графический движок WsPool (Liquid Wave Engine):
  • Реализована непрерывная суперпозиция математических гармоник для отображения активности сокетов WsPool.
  • Математическое сглаживание Catmull-Rom C1 с непрерывными касательными производными и 80 субпиксельными точками сэмплирования.
  • График синхронизирован с нативными данными ядра C/Rust и автоматически ложится в ноль при отключении прокси.
  1. Анимированные перекатывающиеся цифры (Rolling Numbers):
  • Время работы приложения, скорость передачи данных и количество переданных килобайт анимированы через AnimatedContent с пружинной физикой.
  1. Тактильный 3D-отклик и анимации (Spring Scale Press):
  • При нажатии на кнопки и карточки элементы физично сжимаются на 3% с упругим откликом при отпускании.
  • На кнопке включения прокси настроен упругий пружинный отклик.
  1. Каскадное появление элементов (Staggered Entrance):
  • На экранах Настройки и О разработчике карточки и пункты меню плавно всплывают снизу вверх друг за другом с легким замедлением.
  1. 3D Параллакс и Герой-переход:
  • При прокрутке экрана О разработчике шапка профиля плавно уменьшается и смещается с 3D-параллакс эффектом.
  • Настроен пружинный герой-переход аватара разработчика при открытии экрана.
  1. Переработка дизайна логов и AMOLED палитры.

  2. Переработка дизайна фона Главной страницы, настроек, логов

Файлы релиза:

  • app-release.apk (Релизная версия)
  • app-debug.apk (Отладочная версия)

Mirrly TG Proxy v1.0.2

Choose a tag to compare

@joycecurcirt539-dot joycecurcirt539-dot released this 30 Jul 02:08

Что нового?

  • Раздел «О разработчике»: Добавлена вкладка в настройках со сведениями о создателе (R1Xern), ссылками на Telegram-канал, профиль и репозиторий GitHub, а также поддержкой проекта через DaLink.
  • Автоматическая проверка обновлений: Добавлен модуль парсинга релизов с GitHub. При выходе новой версии появляется анимированное диалоговое окно с описанием релиза и ссылкой на скачивание.