Skip to content

[Android] Версия на Kotlin/Go с Material Design (Не для мержа)#434

Open
amurcanov wants to merge 43 commits intoFlowseal:mainfrom
amurcanov:main
Open

[Android] Версия на Kotlin/Go с Material Design (Не для мержа)#434
amurcanov wants to merge 43 commits intoFlowseal:mainfrom
amurcanov:main

Conversation

@amurcanov
Copy link
Copy Markdown

📱 Описание

Представляю альтернативную Android-версию проекта tg-ws-proxy, написанную на Kotlin и Go.

Оригинальная логика проксирования полностью сохранена, однако кодовая база приложения и UI переработаны с нуля.

✨ Ключевые особенности форка

  • Современный UI/UX: Интуитивно понятный и красивый интерфейс на базе Material Design 3.
  • Производительность: Оптимизированное потребление ресурсов батареи и памяти.
  • Нативная интеграция: Строгая архитектурная связка Go (ядро прокси) и Kotlin (интерфейс).
  • В отличие от прочих Android-форков (например, LemoLev), в данном клиенте сделан значительный упор на стабильность работы, эстетику дизайна и user-friendly функционал.

📌 Репозиторий и установка

Исходный код и готовые APK-файлы доступны в репозитории проекта:
👉 amurcanov/tg-ws-proxy-android


Примечание для мейнтейнеров:
Данный Pull Request создан в информационных (ознакомительных) целях, чтобы пользователи оригинального репозитория могли легко найти качественную Android-версию.
Я понимаю позицию проекта относительно развития Windows-враппера и не претендую на слияние (merge) этого кода в main ветку. Буду признателен, если PR останется открытым для повышения видимости форка (как витрина). Если это противоречит правилам репозитория — можете закрыть его.

@victorlapin
Copy link
Copy Markdown

Использовать wakelock не есть хорошо в данном случае, к сожалению, система его отберёт через некоторое время

@victorlapin
Copy link
Copy Markdown

И specialUse для сервиса доступен только с sdk 34, я поставил media 😊

@amurcanov
Copy link
Copy Markdown
Author

@victorlapin у меня активный компонент - фореграунд уведомление позволяет жить сколько угодно вейклоку, можно запустить и забыть про прокси на часы или дни.

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Mar 28, 2026

При сборке задействован SDK 35, так же таргет SDK если не отказывает память поставлен 35. Думаю у большинства уже есть 15-16 андроид. Ну а так поддержка большая

@victorlapin
Copy link
Copy Markdown

@victorlapin у меня активный компонент - фореграунд уведомление позволяет жить сколько угодно вейклоку, можно запустить и забыть про прокси на часы или дни.

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

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Mar 28, 2026

@victorlapin странно, но я с 16 андроидом, сижу сутками не отключая прокси, и ни разу ничего не шолохнулось (уделю внимание этому в дальнейшем короче)

@victorlapin
Copy link
Copy Markdown

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

@IMDelewer

This comment was marked as off-topic.

@amurcanov

This comment was marked as resolved.

@IMDelewer
Copy link
Copy Markdown
Contributor

IMDelewer commented Mar 28, 2026

  1. тем самым позволяя генерировать разные айпи для подключения во время запуска прокси

Т.е он генерирует айпи адреса из списка, чтобы к ним подключаться?

  1. Обычно никто не делает названия пакетов: com.example.*, согласен вопрос неможко может показаться странным.
  2. 📗 Вопросы и ответы #389. Мобильные сети блокируется лучше и обходить их сложнее. Поэтому tg-ws-proxy на телефоне работает хуже. С впн все прекрасно работает и во время белых списков. Я согласен с вами что можно использовать нейронки для генерации кода, но все же лучше хоть какой то вклад делать своими руками.

@amurcanov

This comment has been minimized.

@IMDelewer
Copy link
Copy Markdown
Contributor

IMDelewer commented Mar 28, 2026

@IMDelewer

1. да
   .

2. Я конечно тоже не уверен что мог целиком 1 в 1 перенести логику флоусила и возможно что то упускаю из за чего такой кирдык. Но скажу что без вспомогательных средств ни с вайфай ни с мобильной сети - тг-вс-прокси просто не работает, ошибка вебсокет подключения к дата-центрам. У меня тг с впном работает хорошо включая время белых списком - но по какой то причине часто случается так, что загрузка или отправка чего то, сильно притормаживается, как будто у меня пинг в 10000мс и более, при этом ещё реже случается так, что под впном - сам телеграм так же не работает. Иногда помогает перезапуск клиента а иногда нет, на клиенте ПК дела обстоят намного лучше, там с впном таких проблем о которых я говорю и нету практически. Андроиды какие то особенные, я для себя повторюсь нахожу полезным связку впн+тг-вс-прокси, хотя не спорю что для большинства это будет бесполезным и тд. В issue многократно подняты проблемы недоступности прокси, вечного соеденения, ошибки подключения ws dc, это как раз то о чем я говорю при попытки использовать программу без костылей.

(блин гитхаб у меня шалит, ну вы поняли крч)

  1. 📗 Вопросы и ответы #389

Почитайте там: "САМЫЙ ЧАСТЫЙ ВОПРОС" и пункт "IP-адреса", чтобы полностью передать функционал tg-ws-proxy. Если все заработает, то добавлю ваш форк в #389

Если коротко, то надо использовать для DC2/DC4 (возможно DC203) ip: 149.154.167.220, т.к только он не заблокирован РКН'ом. Другие DC нужно пропускать уже не через tg-ws-proxy.

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Mar 28, 2026

@IMDelewer Ну вообще да я ознакомился, и проверил - с вайфай это правда заработало без костылей, не могу проверить с мобильной сети, сейчас бс. Я не углублялся в это и долго ломал голову почему так всё происходило, списав это просто на dpi или сам тг 😁😁😁. Хочу сказать что оказался максимально некомпетентен в этом вопросе и доверился ai-слопу (ну ai тоже ничего не понимал, я не верю в её сказки, а ваша наблюдательность великолепна!). К сожалению не натыкался на этот issue, спасибо что просветили и спокойно объяснили! Проверил с телефона и это тоже оказалось рабочим, думаю на мобильной сети будет так же хорошо. Очень благодарен. буду выкатывать апдейтик форка

@IMDelewer
Copy link
Copy Markdown
Contributor

@IMDelewer Ну вообще да я ознакомился, и проверил - с вайфай это правда заработало без костылей, не могу проверить с мобильной сети, сейчас бс. Я не углублялся в это и долго ломал голову почему так всё происходило, списав это просто на dpi или сам тг 😁😁😁. Хочу сказать что оказался максимально некомпетентен в этом вопросе и доверился ai-слопу. К сожалению не натыкался на этот issue, спасибо что просветили и спокойно объяснили! Проверил с телефона и это тоже оказалось рабочим, думаю на мобильной сети будет так же хорошо. Очень благодарен. буду выкатывать апдейтик форка

Просто по каким то непонятным причинам РКН не блокирует единственный IP адрес телеграмма, он служит для обслуживания DC2/DC4. (Возможно он попал под список лондонских банковских айпи адресов, которые РКН почему то не блокирует). Рад был помочь.

@Tommy-XL
Copy link
Copy Markdown

Tommy-XL commented Apr 13, 2026

Протестил v1.0.6, работает с Wi-Fi отлично, с мобильными инетом (T2) первое время только фото плохо грузил а потом вообще перестал подключаться

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

P.S. Теперь на моб. инете снова подключился и в этот раз даже фото грузит, но как долго от так протянет)
P.S.2 Снова отвалился, минуты 5 ждал, всё равно не подключился, даже настройки менял и ничего не помогало, вернулся на Wi-Fi посидел минуту и снова проверил моб. инет и он снова подключился (как это работает?)

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Apr 13, 2026

P.S.2 Снова отвалился, минуты 5 ждал, всё равно не подключился, даже настройки менял и ничего не помогало, вернулся на Wi-Fi посидел минуту и снова проверил моб. инет и он снова подключился (как это работает?)

Ну у меня прям отлично работает с моб сети. У тебя последняя версия телеграмма, или моды?

Ещё можно попробовать отключить авто адресацию DC и переключится на ручную с лондонским узлом. Вероятно сам клоудфлар замешан вообще я и не думаю что оно хоть как то будет работать с моб сети ибо КФ заблочен тоже

@Tommy-XL
Copy link
Copy Markdown

У тебя последняя версия телеграмма, или моды?

Не, я использую ток оригинальный тг (версия v12.6.4 (6666))

@Tommy-XL
Copy link
Copy Markdown

Tommy-XL commented Apr 13, 2026

Попробую использовать ByeByeDPI со стратегией на обход Cloudflare вместе с tg ws proxy, посмотрим как работать будет

P.s. Не нифига, с ним вообще перестаёт работать

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Apr 13, 2026

Попробую использовать ByeByeDPI со стратегией на обход Cloudflare вместе с tg ws proxy, посмотрим как работать будет

P.s. Не нифига, с ним вообще перестаёт работать

Ну значит не судьба, посмотрю в коде может чо, но раз не хочет, отключите клоудфлар и сидите с вайфая на ручных адресах, сам автор говорил о неработоспособности данного способа на моб сетях, хотя по опыту скажу клоудфлар и авто адресация работает хоть и не у всех🤷(код тоже не идеален, это ИИ, в 1.0.7 займусь производительностью корректной и прокси, у меня с днс тунелем был опыт где тоже были дропы но они фиксились балансером и авто оживлением) заметил ещё интересную вещь, сижу щас с другом в кафе, у него самсунг у меня сяоми у обоих т2, сидим от одной БС, у него почему то вообще перестало работать а у меня работает на ура вообще. У него дома например это работало. Ну в общем в 1.0.7 попробую улучшить ситуацию по моб сетям

@Tommy-XL
Copy link
Copy Markdown

заметил ещё интересную вещь, сижу щас с другом в кафе, у него самсунг у меня сяоми у обоих т2, сидим от одной БС, у него почему то вообще перестало работать а у меня работает на ура вообще. У него дома например это работало. Ну в общем в 1.0.7 попробую улучшить ситуацию по моб сетям

Попробовал ещё один форк где реализовано FakeTLS домен, прописал туда домен VK и у меня отлично стало работать (иногда конечно может пропасть но в целом на 95% работает что с Wi-Fi что с мобильным)
Вот этот форк

@amurcanov
Copy link
Copy Markdown
Author

заметил ещё интересную вещь, сижу щас с другом в кафе, у него самсунг у меня сяоми у обоих т2, сидим от одной БС, у него почему то вообще перестало работать а у меня работает на ура вообще. У него дома например это работало. Ну в общем в 1.0.7 попробую улучшить ситуацию по моб сетям

Попробовал ещё один форк где реализовано FakeTLS домен, прописал туда домен VK и у меня отлично стало работать (иногда конечно может пропасть но в целом на 95% работает что с Wi-Fi что с мобильным)
Вот этот форк

Пробовал отдельно от клоудфлара ?

@Tommy-XL
Copy link
Copy Markdown

Пробовал отдельно от клоудфлара ?
Screenshot_20260414_081604_com_tgwsproxy_MainActivity

Если я правильно понял то он там включён

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Apr 14, 2026

Пробовал отдельно от клоудфлара ?
Screenshot_20260414_081604_com_tgwsproxy_MainActivity

Если я правильно понял то он там включён

Да сейчас он у тебя включен и я хочу тебя огорчить:
При включенном клоудфларе, прокси будет работать отлично, независимо от бреда написанного в FakeTLS.

Можно выключить клоудфлар но тогда способ отвалится на мобильной сети независимо от бреда написанного в FakeTLS.
Но в это же время оно продолжит работу. Wi Fi, это потому, что, по умолчанию указан для DC2 DC4 стабильный лондонский узел 149.154.167.220

Окей можно поменять айпи адреса на другой, но тогда без клоудфлара вы увидите насколько бесполезен FakeTLS. Это ввод в заблуждение из за того что вы не видите логи, на деле там BAD HANDSHAKE MTPROTO спамят ошибки.

Естественно если включить КЛОУДФЛАР то прокси заработает на другом айпи. Вообще смысла вводить какие то айпи DC при использовании CDN cloudflare как будто не имеет значения.

Это приколы DPI и ТД. Я конечно могу ошибаться в некоторых объяснениях но лучше перейти на dd и просто использовать клоудфлар. В паре с клоудфларом, фейк тлс вообще самая бесполезная вещь в мире

@Tommy-XL
Copy link
Copy Markdown

Это приколы DPI и ТД. Я конечно могу ошибаться в некоторых объяснениях но лучше перейти на dd и просто использовать клоудфлар. В паре с клоудфларом, фейк тлс вообще самая бесполезная вещь в мире

Понял, мне показалось что это конкретно из-за FakeTLS отлично работает, я в отрасли сети вообще не шарю, хотя хотелось бы но для меня пока это чё-то сложное

@amurcanov
Copy link
Copy Markdown
Author

amurcanov commented Apr 14, 2026

Это приколы DPI и ТД. Я конечно могу ошибаться в некоторых объяснениях но лучше перейти на dd и просто использовать клоудфлар. В паре с клоудфларом, фейк тлс вообще самая бесполезная вещь в мире

Понял, мне показалось что это конкретно из-за FakeTLS отлично работает, я в отрасли сети вообще не шарю, хотя хотелось бы но для меня пока это чё-то сложное

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants