Skip to content

Releases: youtubediscord/ZapretKVN-android

Zapret KVN 0.2.16 test 1

Pre-release

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 22:34

Что исправлено

  • Импорт VLESS XHTTP снова принимает устаревшее поле extra.xmux.cMaxLifetimeMs.
  • Значение безопасно преобразуется из миллисекунд в актуальное для закреплённого ядра h_max_reusable_secs; поддерживаются число и диапазон.
  • Неоднозначное одновременное указание старого и нового поля, а также значения с потерей точности отклоняются явной ошибкой.

Сборка

  • Коммит приложения: d552d3b4442f65f9f642dfb054d65423f549b611
  • Версия: 0.2.16-test.1 (versionCode 201601)
  • Application ID: io.github.zapretkvn.android.debug
  • ABI: arm64-v8a, armeabi-v7a
  • Подпись SHA-256: 6584af60fe4075603282e351731d95745a78308385a2e3c26fa156e50a4b84fe

Проверки

  • Полный набор JVM unit-тестов.
  • Регрессионные тесты числа, диапазона, неоднозначного и неточного legacy-значения.
  • ./scripts/verify-project.sh.
  • Проверены package/version, debug-подпись, единственная ABI, libbox.so и SHA-256 обеих APK.

Это отдельная debug-сборка для ручной установки; она не предназначена для Stable/Beta updater. Подключённого ADB-устройства в среде сборки не было.

Zapret KVN 0.2.15

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 21:03

Zapret KVN 0.2.15

  • Канал: stable
  • Android package: io.github.zapretkvn.android
  • APK: отдельные arm64-v8a, armeabi-v7a и x86_64
  • Core tag: v1.13.14-extended-2.5.2
  • Core commit: ff11f007ec798136a5de258f947a4f34011a37ea
  • Core patch SHA-256: 9f51f588bea76b108509359bec825c22d8d68f6f78b68cf191cf1f512bda22e8
  • Signing certificate SHA-256: f718835f014c8c4bfdcb281483eb9aea0d33cf705f7f1399545821b164f58898
  • arm64-v8a APK SHA-256: 21b99ddd4523a16b6fc2bed16acac180fbec72111611ab28b3086a0591af3462
  • armeabi-v7a APK SHA-256: 011429d92bef73155a0efa6d1f2a7940bd49f9e52a53461ff1971c84d2bce880
  • x86_64 APK SHA-256: 336e7aef0ffc005446480823d45235afcccba9f2119edd67f21bb1779bbe274d

Что изменилось

  • Добавлен отдельный список приложений, которым VPN полностью блокирует доступ в сеть.
  • Список блокировки пуст по умолчанию и не меняет поведение существующих установок.
  • Блокировка имеет приоритет над маршрутами «через VPN» и «напрямую»; одно приложение нельзя одновременно выбрать в нескольких списках.
  • Для заблокированного приложения отклоняются DNS-запросы и весь остальной трафик внутри VPN.
  • Исправлено возобновление локальной публикации Stable после частично загруженного draft-релиза.

Каждый APK содержит только одну архитектуру и встроенный libbox; отдельная динамическая загрузка ядра не используется.

Известные ограничения MVP

  • Android 8+; доступны отдельные arm64-v8a, armeabi-v7a и x86_64 APK, интерфейс рассчитан на телефоны.
  • Always-on/Lockdown и shared UID не поддерживаются как гарантированный per-app режим.
  • Managed DNS перехватывает TCP/UDP 53, но не встроенный DoH, DoT или mDNS; FakeIP выключен.
  • Domain-only block не является firewall: для гарантии нужен IP/CIDR rule-set.
  • Clash YAML и Hysteria v1 URI пока не импортируются; raw JSON остаётся ответственностью пользователя.
  • APK проверяется один раз при запуске; загрузка и системная установка требуют подтверждения, silent install недоступен. Подписки не обновляются в фоне, core обновляется только вместе с APK.
  • При неработающем proxy/DNS VPN закрывается без бесконечного retry и plaintext DNS fallback.

Zapret KVN 0.2.14

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 20:32

Zapret KVN 0.2.14

  • Канал: stable
  • Android package: io.github.zapretkvn.android
  • APK: отдельные arm64-v8a, armeabi-v7a и x86_64
  • Core tag: v1.13.14-extended-2.5.2
  • Core commit: ff11f007ec798136a5de258f947a4f34011a37ea
  • Core patch SHA-256: 9f51f588bea76b108509359bec825c22d8d68f6f78b68cf191cf1f512bda22e8
  • Signing certificate SHA-256: f718835f014c8c4bfdcb281483eb9aea0d33cf705f7f1399545821b164f58898
  • arm64-v8a APK SHA-256: 288f8ff167b43ec5fbfbb4784a2bfd831c83bebb56bc82211a6bf137081dcc7d
  • armeabi-v7a APK SHA-256: a786bad7b61856a4357e35aad58ffe8266b5e74e40a98f45c969d9113437fa91
  • x86_64 APK SHA-256: 8e547939bf1518dc407a1516d1846f3fc71b76e9a909e6cd3726d2b4e40c296f

Что изменилось

  • Brave и официальное приложение X/Twitter добавлены в рекомендации «через VPN» для новой установки.
  • Рекомендации применяются только при первой настройке: обновления никогда автоматически не меняют существующий include/exclude-список пользователя.
  • Удалён механизм миграций рекомендуемых приложений и связанная с ним лишняя логика хранения.
  • Локальная публикация Stable стала возобновляемой: assets загружаются последовательно, проверяются по GitHub SHA-256 и публикуются только полным набором.

Каждый APK содержит только одну архитектуру и встроенный libbox; отдельная динамическая загрузка ядра не используется.

Известные ограничения MVP

  • Android 8+; доступны отдельные arm64-v8a, armeabi-v7a и x86_64 APK, интерфейс рассчитан на телефоны.
  • Always-on/Lockdown и shared UID не поддерживаются как гарантированный per-app режим.
  • Managed DNS перехватывает TCP/UDP 53, но не встроенный DoH, DoT или mDNS; FakeIP выключен.
  • Domain-only block не является firewall: для гарантии нужен IP/CIDR rule-set.
  • Clash YAML и Hysteria v1 URI пока не импортируются; raw JSON остаётся ответственностью пользователя.
  • APK проверяется один раз при запуске; загрузка и системная установка требуют подтверждения, silent install недоступен. Подписки не обновляются в фоне, core обновляется только вместе с APK.
  • При неработающем proxy/DNS VPN закрывается без бесконечного retry и plaintext DNS fallback.

Zapret KVN 0.2.14 test 1

Pre-release

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 20:49

Что изменилось

  • Добавлен отдельный список полной блокировки приложений.
  • По умолчанию список пуст: обновление ничего не блокирует автоматически.
  • Заблокированные приложения допускаются в TUN и получают первые DNS/route
    package_name → reject, поэтому не могут использовать Wi‑Fi или мобильную сеть
    во время активной VPN-сессии.
  • Списки VPN/direct и блокировки взаимоисключающие; режимы include и exclude
    поддерживаются без изменения сохранённого профиля.
  • На экране «Маршруты» появился отдельный picker заблокированных приложений.

Сборка

  • Коммит приложения: 18b120606bb4e899178c8226b0d1c7a585b849f7
  • Версия: 0.2.14-test.1 (versionCode 201401)
  • Application ID: io.github.zapretkvn.android.debug
  • ABI: arm64-v8a, armeabi-v7a
  • Подпись SHA-256: 6584af60fe4075603282e351731d95745a78308385a2e3c26fa156e50a4b84fe

Проверки

  • 165/165 JVM unit-тестов.
  • 14/14 целевых instrumented-тестов на чистом AVD API 36, включая реальный
    TCP-отказ для package, который является единственным приложением в blocklist.
  • ./scripts/verify-project.sh
  • ./gradlew :app:lintDebug
  • Exact sing-box check для DNS/route package reject.
  • Проверены package/version, debug-подпись, единственная ABI, libbox.so и
    SHA-256 обеих APK.

Это отдельная debug-сборка для ручной установки; она не предназначена для
Stable/Beta updater. Блокировка действует только пока подключён Zapret KVN.

Zapret KVN 0.2.13 test 3

Pre-release

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 20:26

Что изменилось

  • Brave (com.brave.browser) и X/Twitter (com.twitter.android) остаются рекомендациями «через VPN» для новой установки.
  • Механизм миграций рекомендаций полностью удалён.
  • После первой инициализации обновления никогда автоматически не меняют пользовательский include/exclude-список.
  • Хранилище и тесты упрощены: удалено 229 строк миграционной логики.

Сборка

  • Коммит приложения: 2b308a128abad8248f3ae0e4192aaf94900f2175
  • Версия: 0.2.13-test.3 (versionCode 201303)
  • Application ID: io.github.zapretkvn.android.debug
  • ABI: arm64-v8a, armeabi-v7a
  • Подпись SHA-256: 6584af60fe4075603282e351731d95745a78308385a2e3c26fa156e50a4b84fe

Проверки

  • ./scripts/verify-project.sh
  • ./gradlew :app:testDebugUnitTest :app:lintDebug
  • Проверены package/version, подпись, единственная ABI, libbox.so и SHA-256 обеих APK.

Это отдельная debug-сборка для ручной установки; она не предназначена для Stable/Beta updater.

Zapret KVN 0.2.13 test 2

Pre-release

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 20:18

Что изменилось

  • Установленное официальное приложение X/Twitter (com.twitter.android) теперь автоматически добавляется в режим «через VPN».
  • На чистой установке X/Twitter входит в начальный рекомендуемый список.
  • Миграции рекомендаций теперь применяются по ревизиям: пользователь, обновившийся сразу со Stable, получит и Brave, и X/Twitter.
  • Ранее снятые вручную приложения повторно не возвращаются; режим исключений автоматически не меняется.

Сборка

  • Коммит приложения: 2916e9b11d89f9988bf7cd1e17ec02db1508bfb4
  • Версия: 0.2.13-test.2 (versionCode 201302)
  • Application ID: io.github.zapretkvn.android.debug
  • ABI: arm64-v8a, armeabi-v7a
  • Подпись SHA-256: 6584af60fe4075603282e351731d95745a78308385a2e3c26fa156e50a4b84fe

Проверки

  • ./scripts/verify-project.sh
  • ./gradlew :app:testDebugUnitTest :app:lintDebug
  • Проверены package/version, подпись, единственная ABI, libbox.so и SHA-256 обеих APK.

Это отдельная debug-сборка для ручной установки; она не предназначена для Stable/Beta updater.

Zapret KVN 0.2.13 test 1

Pre-release

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 20:14

Что изменилось

  • Установленный Brave (com.brave.browser) теперь автоматически добавляется в режим «через VPN».
  • На чистой установке Brave остаётся частью начального рекомендуемого списка.
  • Для существующего include-списка Brave добавляется однократно; ручной выбор пользователя после миграции сохраняется.
  • В режиме исключений список приложений, идущих напрямую, автоматически не меняется.

Сборка

  • Коммит приложения: 6f673c0185b5c1088b1f25442ed031abf6a7dea2
  • Версия: 0.2.13-test.1 (versionCode 201301)
  • Application ID: io.github.zapretkvn.android.debug
  • ABI: arm64-v8a, armeabi-v7a
  • Подпись SHA-256: 6584af60fe4075603282e351731d95745a78308385a2e3c26fa156e50a4b84fe

Проверки

  • ./scripts/verify-project.sh
  • ./gradlew :app:testDebugUnitTest :app:lintDebug
  • Проверены package/version, подпись, единственная ABI, libbox.so и SHA-256 обеих APK.

Это отдельная debug-сборка для ручной установки; она не предназначена для Stable/Beta updater.

Zapret KVN 0.2.12

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 20:05

Zapret KVN 0.2.12

  • Канал: stable
  • Android package: io.github.zapretkvn.android
  • APK: отдельные arm64-v8a, armeabi-v7a и x86_64
  • Core tag: v1.13.14-extended-2.5.2
  • Core commit: ff11f007ec798136a5de258f947a4f34011a37ea
  • Core patch SHA-256: 9f51f588bea76b108509359bec825c22d8d68f6f78b68cf191cf1f512bda22e8
  • Signing certificate SHA-256: f718835f014c8c4bfdcb281483eb9aea0d33cf705f7f1399545821b164f58898
  • arm64-v8a APK SHA-256: d4d29352f9150060e8d9e556bcf9a7018d24b723200ab155a5aaa0fb1eaef501
  • armeabi-v7a APK SHA-256: 5faea008042706119bcf10de29f760cbbf7c8a6574da3dcd32c2800216c5ac36
  • x86_64 APK SHA-256: d433a310e623eac064b111efa8bbb95a577c574a11ace4fdd2df899700cf2ff5

Что изменилось

  • Восстановлено обнаружение приложений на OEM-прошивках с урезанными ответами PackageManager: каталог использует последовательные fallback-источники и объединяет результаты без дублей.
  • В выборе VPN scope теперь видны отключённые системные приложения, которые Android всё ещё разрешает включать в per-app маршрутизацию.
  • Рекомендуемые системные приложения по умолчанию включаются в VPN scope, а пользовательские исключения сохраняются.
  • При сбое обнаружения приложений интерфейс показывает исходную причину ошибки вместо общего сообщения без диагностических деталей.
  • Исправлен импорт стандартных VLESS XHTTP URI: параметр extra разбирается как URL-кодированный JSON по XTLS, а не как Base64.
  • XTLS XHTTP options явно преобразуются в схему закреплённого sing-box-extended; неизвестные поля завершают импорт ошибкой вместо незаметной потери настроек.
  • Добавлена нативная плитка Zapret KVN для быстрых настроек Android: она запускает и останавливает VPN с выбранным профилем и показывает текущее состояние подключения.
  • Если профиль не выбран или Android ещё не выдал VPN/notification permission, плитка открывает приложение для штатного системного запроса.
  • Текстовый файл и буфер обмена теперь импортируют все найденные URI поддерживаемых протоколов, а не только первую подходящую строку.
  • В одном импорте можно смешивать VLESS, VMess, Trojan, Shadowsocks, Hysteria2 и TUIC.
  • Подписи, маркеры списка, Markdown-обёртки, Telegram-ссылки и несколько конфигов в одной строке не мешают обнаружению.
  • Все элементы многоэлементного Android-буфера объединяются перед разбором.
  • Неподдерживаемая конфигурационная URI-схема останавливает импорт явной ошибкой, чтобы частичный результат нельзя было принять за полный.
  • Расширен управляемый пул защищённых DNS-серверов для более устойчивого разрешения имён при недоступности отдельных провайдеров.
  • Явный отказ пользователя в системном запросе доступа к VPN теперь распознаётся отдельно и сопровождается понятной диагностикой.
  • Переключение сервера использует отдельный короткоживущий command client sing-box, чтобы гонка с подпиской selector-групп не пересоздавала TUN без необходимости.
  • Выбор MTU в настройках скрытия VPN теперь полностью виден и доступен на узких экранах без горизонтального прокручивания.
  • Обновлены публичная документация и Windows-сценарий сбора доказательств поведения VPN в режиме максимального энергосбережения.

Каждый APK содержит только одну архитектуру и встроенный libbox; отдельная динамическая загрузка ядра не используется.

Известные ограничения MVP

  • Android 8+; доступны отдельные arm64-v8a, armeabi-v7a и x86_64 APK, интерфейс рассчитан на телефоны.
  • Always-on/Lockdown и shared UID не поддерживаются как гарантированный per-app режим.
  • Managed DNS перехватывает TCP/UDP 53, но не встроенный DoH, DoT или mDNS; FakeIP выключен.
  • Domain-only block не является firewall: для гарантии нужен IP/CIDR rule-set.
  • Clash YAML и Hysteria v1 URI пока не импортируются; raw JSON остаётся ответственностью пользователя.
  • APK проверяется один раз при запуске; загрузка и системная установка требуют подтверждения, silent install недоступен. Подписки не обновляются в фоне, core обновляется только вместе с APK.
  • При неработающем proxy/DNS VPN закрывается без бесконечного retry и plaintext DNS fallback.

Zapret KVN 0.2.12 test 1

Pre-release

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 19:56

Что проверяется

  • Исправлены Android 16 instrumented-регрессии импорта VIEW/clipboard и автоматической проверки обновлений.
  • Выбор MTU полностью доступен на узком экране.
  • Смена selector-outbound использует отдельный command client и не пересоздаёт TUN при штатном переключении.
  • Hysteria2, strict Private DNS, diagnostic log lifecycle и routing matrix проходят целевые device-тесты.

Сборка

  • Коммит приложения: ba15379e1d69972ef5480269a91dbda609f9f80c
  • Версия: 0.2.12-test.1 (versionCode 201201)
  • Application ID: io.github.zapretkvn.android.debug
  • ABI: arm64-v8a, armeabi-v7a
  • Подпись SHA-256: 6584af60fe4075603282e351731d95745a78308385a2e3c26fa156e50a4b84fe

Проверки

  • ./scripts/verify-project.sh
  • ./gradlew :app:testDebugUnitTest :app:lintDebug
  • Целевые Android device-тесты исходных семи регрессий.
  • Проверены package/version, подпись, единственная ABI, libbox.so и SHA-256 обеих APK.

Это отдельная debug-сборка для ручной установки; она не предназначена для Stable/Beta updater.

Zapret KVN 0.2.11

Choose a tag to compare

@loop-uh loop-uh released this 24 Jul 18:02

Zapret KVN 0.2.11

  • Канал: stable
  • Android package: io.github.zapretkvn.android
  • APK: отдельные arm64-v8a, armeabi-v7a и x86_64
  • Core tag: v1.13.14-extended-2.5.2
  • Core commit: ff11f007ec798136a5de258f947a4f34011a37ea
  • Core patch SHA-256: 9f51f588bea76b108509359bec825c22d8d68f6f78b68cf191cf1f512bda22e8
  • Signing certificate SHA-256: f718835f014c8c4bfdcb281483eb9aea0d33cf705f7f1399545821b164f58898
  • arm64-v8a APK SHA-256: 82b298ba3df35a7f8789ce9fc28955d43e8a629b5e588e36e1bf195b2bc7918b
  • armeabi-v7a APK SHA-256: 9ce9afd761fe2c253354f15b44358cac80fcf2de1a047bdd7a8d5adf7f7edfe6
  • x86_64 APK SHA-256: 4f42291555b018d7dbebc7dc67801f3b872c35efbfe6aa828e77089a45696416

Что изменилось

  • Восстановлено обнаружение приложений на OEM-прошивках с урезанными ответами PackageManager: каталог использует последовательные fallback-источники и объединяет результаты без дублей.
  • В выборе VPN scope теперь видны отключённые системные приложения, которые Android всё ещё разрешает включать в per-app маршрутизацию.
  • Рекомендуемые системные приложения по умолчанию включаются в VPN scope, а пользовательские исключения сохраняются.
  • При сбое обнаружения приложений интерфейс показывает исходную причину ошибки вместо общего сообщения без диагностических деталей.
  • Исправлен импорт стандартных VLESS XHTTP URI: параметр extra разбирается как URL-кодированный JSON по XTLS, а не как Base64.
  • XTLS XHTTP options явно преобразуются в схему закреплённого sing-box-extended; неизвестные поля завершают импорт ошибкой вместо незаметной потери настроек.
  • Добавлена нативная плитка Zapret KVN для быстрых настроек Android: она запускает и останавливает VPN с выбранным профилем и показывает текущее состояние подключения.
  • Если профиль не выбран или Android ещё не выдал VPN/notification permission, плитка открывает приложение для штатного системного запроса.
  • Текстовый файл и буфер обмена теперь импортируют все найденные URI поддерживаемых протоколов, а не только первую подходящую строку.
  • В одном импорте можно смешивать VLESS, VMess, Trojan, Shadowsocks, Hysteria2 и TUIC.
  • Подписи, маркеры списка, Markdown-обёртки, Telegram-ссылки и несколько конфигов в одной строке не мешают обнаружению.
  • Все элементы многоэлементного Android-буфера объединяются перед разбором.
  • Неподдерживаемая конфигурационная URI-схема останавливает импорт явной ошибкой, чтобы частичный результат нельзя было принять за полный.
  • Расширен управляемый пул защищённых DNS-серверов для более устойчивого разрешения имён при недоступности отдельных провайдеров.
  • Явный отказ пользователя в системном запросе доступа к VPN теперь распознаётся отдельно и сопровождается понятной диагностикой.
  • Обновлены публичная документация и Windows-сценарий сбора доказательств поведения VPN в режиме максимального энергосбережения.

Каждый APK содержит только одну архитектуру и встроенный libbox; отдельная динамическая загрузка ядра не используется.

Известные ограничения MVP

  • Android 8+; доступны отдельные arm64-v8a, armeabi-v7a и x86_64 APK, интерфейс рассчитан на телефоны.
  • Always-on/Lockdown и shared UID не поддерживаются как гарантированный per-app режим.
  • Managed DNS перехватывает TCP/UDP 53, но не встроенный DoH, DoT или mDNS; FakeIP выключен.
  • Domain-only block не является firewall: для гарантии нужен IP/CIDR rule-set.
  • Clash YAML и Hysteria v1 URI пока не импортируются; raw JSON остаётся ответственностью пользователя.
  • APK проверяется один раз при запуске; загрузка и системная установка требуют подтверждения, silent install недоступен. Подписки не обновляются в фоне, core обновляется только вместе с APK.
  • При неработающем proxy/DNS VPN закрывается без бесконечного retry и plaintext DNS fallback.