Make Russian the default README and strengthen phone blur

- README.md is now Russian (default page on GitHub); English moved to
  README.en.md, both cross-linked; drop README.ru.md
- Increase BlurredTextSpan radius to 7dp and draw the blurred glyphs
  multiple times so the number becomes an unreadable smudge
This commit is contained in:
instant992 2026-06-10 03:38:59 +04:00
parent d1bd2d7b2d
commit 14f4107450
4 changed files with 113 additions and 109 deletions

74
README.en.md Normal file
View file

@ -0,0 +1,74 @@
# FoxiGram
[Русский](README.md) · **English**
An unofficial Telegram client based on Nekogram, with a built-in VLESS+Reality
proxy client (Xray) for bundled, one-tap proxy access.
## Download
Latest builds are on the releases page:
**https://github.com/instant992/FoxiGram/releases**
Download `FoxiGram-<version>-<code>-arm64-v8a.apk` from the newest release and
install it on your device (you may need to allow installs from unknown
sources).
You can also open the download link straight from the app:
**Settings → Foxi → Download FoxiGram**.
## Built-in proxy servers
Server credentials are intentionally kept out of this repository.
- The real servers live in
`TMessagesProj/src/main/java/org/telegram/messenger/XrayServers.java`,
which is git-ignored.
- A template is provided at `XrayServers.java.template`.
To configure your own bundled proxies:
```sh
cd TMessagesProj/src/main/java/org/telegram/messenger/
cp XrayServers.java.template XrayServers.java
# then edit XrayServers.java and fill in your VLESS+Reality server data
```
Leaving the addresses empty disables the bundled proxies — the app still builds
and runs, you just won't see the pre-configured entries in the proxy list.
## Native Xray library (libxray.so)
The proxy core is a small Go wrapper around xray-core, built as a JNI shared
library. The source is in `libxray/`. The compiled `libxray.so` is git-ignored
and must be built locally.
Build for Android arm64 (requires Go and the Android NDK):
```sh
cd libxray
go mod tidy
set CGO_ENABLED=1
set GOOS=android
set GOARCH=arm64
set CC=<NDK>/toolchains/llvm/prebuilt/<host>/bin/aarch64-linux-android21-clang
go build -buildmode=c-shared -o ../TMessagesProj/src/main/jniLibs/arm64-v8a/libxray.so .
```
## Building the app
Standard Gradle build:
```sh
./gradlew :TMessagesProj_App:assembleRelease -Pandroid.injected.build.abi.filter=arm64-v8a
```
The output APK is named `FoxiGram-<version>-<code>-<abi>.apk`.
## Notes
- `google-services.json`, signing keystores, and `local.properties` are not
committed. Provide your own for release builds.
- This is a fork for personal use. Based on Nekogram, which is based on
Telegram for Android.

View file

@ -1,50 +1,51 @@
# FoxiGram # FoxiGram
**English** · [Русский](README.ru.md) **Русский** · [English](README.en.md)
An unofficial Telegram client based on Nekogram, with a built-in VLESS+Reality Неофициальный клиент Telegram на базе Nekogram со встроенным
proxy client (Xray) for bundled, one-tap proxy access. прокси-клиентом VLESS+Reality (Xray) для доступа к прокси в одно касание.
## Download ## Скачать
Latest builds are on the releases page: Свежие версии — на странице релизов:
**https://github.com/instant992/FoxiGram/releases** **https://github.com/instant992/FoxiGram/releases**
Download `FoxiGram-<version>-<code>-arm64-v8a.apk` from the newest release and Скачайте файл `FoxiGram-<версия>-<код>-arm64-v8a.apk` из последнего релиза и
install it on your device (you may need to allow installs from unknown установите его на устройстве (для этого может понадобиться разрешить установку
sources). из неизвестных источников).
You can also open the download link straight from the app: Ссылку на скачивание также можно открыть прямо из приложения:
**Settings → Foxi → Download FoxiGram**. **Настройки → Foxi → Скачать FoxiGram**.
## Built-in proxy servers ## Встроенные прокси-серверы
Server credentials are intentionally kept out of this repository. Данные серверов намеренно не хранятся в этом репозитории.
- The real servers live in - Реальные серверы лежат в файле
`TMessagesProj/src/main/java/org/telegram/messenger/XrayServers.java`, `TMessagesProj/src/main/java/org/telegram/messenger/XrayServers.java`,
which is git-ignored. который исключён из git.
- A template is provided at `XrayServers.java.template`. - Шаблон находится в `XrayServers.java.template`.
To configure your own bundled proxies: Чтобы настроить свои встроенные прокси:
```sh ```sh
cd TMessagesProj/src/main/java/org/telegram/messenger/ cd TMessagesProj/src/main/java/org/telegram/messenger/
cp XrayServers.java.template XrayServers.java cp XrayServers.java.template XrayServers.java
# then edit XrayServers.java and fill in your VLESS+Reality server data # затем отредактируйте XrayServers.java и впишите данные своих серверов VLESS+Reality
``` ```
Leaving the addresses empty disables the bundled proxies — the app still builds Если оставить адреса пустыми, встроенные прокси отключатся — приложение всё
and runs, you just won't see the pre-configured entries in the proxy list. равно соберётся и будет работать, просто в списке прокси не будет
предзаданных записей.
## Native Xray library (libxray.so) ## Нативная библиотека Xray (libxray.so)
The proxy core is a small Go wrapper around xray-core, built as a JNI shared Ядро прокси — небольшая Go-обёртка над xray-core, собранная как разделяемая
library. The source is in `libxray/`. The compiled `libxray.so` is git-ignored JNI-библиотека. Исходники в `libxray/`. Скомпилированный `libxray.so` исключён
and must be built locally. из git и собирается локально.
Build for Android arm64 (requires Go and the Android NDK): Сборка под Android arm64 (нужны Go и Android NDK):
```sh ```sh
cd libxray cd libxray
@ -56,19 +57,19 @@ set CC=<NDK>/toolchains/llvm/prebuilt/<host>/bin/aarch64-linux-android21-clang
go build -buildmode=c-shared -o ../TMessagesProj/src/main/jniLibs/arm64-v8a/libxray.so . go build -buildmode=c-shared -o ../TMessagesProj/src/main/jniLibs/arm64-v8a/libxray.so .
``` ```
## Building the app ## Сборка приложения
Standard Gradle build: Обычная сборка через Gradle:
```sh ```sh
./gradlew :TMessagesProj_App:assembleRelease -Pandroid.injected.build.abi.filter=arm64-v8a ./gradlew :TMessagesProj_App:assembleRelease -Pandroid.injected.build.abi.filter=arm64-v8a
``` ```
The output APK is named `FoxiGram-<version>-<code>-<abi>.apk`. Итоговый APK называется `FoxiGram-<версия>-<код>-<abi>.apk`.
## Notes ## Примечания
- `google-services.json`, signing keystores, and `local.properties` are not - `google-services.json`, ключи подписи и `local.properties` не хранятся в
committed. Provide your own for release builds. репозитории. Для релизной сборки подставьте свои.
- This is a fork for personal use. Based on Nekogram, which is based on - Это форк для личного использования. Основан на Nekogram, который основан на
Telegram for Android. Telegram для Android.

View file

@ -1,75 +0,0 @@
# FoxiGram
[English](README.md) · **Русский**
Неофициальный клиент Telegram на базе Nekogram со встроенным
прокси-клиентом VLESS+Reality (Xray) для доступа к прокси в одно касание.
## Скачать
Свежие версии — на странице релизов:
**https://github.com/instant992/FoxiGram/releases**
Скачайте файл `FoxiGram-<версия>-<код>-arm64-v8a.apk` из последнего релиза и
установите его на устройстве (для этого может понадобиться разрешить установку
из неизвестных источников).
Ссылку на скачивание также можно открыть прямо из приложения:
**Настройки → Foxi → Скачать FoxiGram**.
## Встроенные прокси-серверы
Данные серверов намеренно не хранятся в этом репозитории.
- Реальные серверы лежат в файле
`TMessagesProj/src/main/java/org/telegram/messenger/XrayServers.java`,
который исключён из git.
- Шаблон находится в `XrayServers.java.template`.
Чтобы настроить свои встроенные прокси:
```sh
cd TMessagesProj/src/main/java/org/telegram/messenger/
cp XrayServers.java.template XrayServers.java
# затем отредактируйте XrayServers.java и впишите данные своих серверов VLESS+Reality
```
Если оставить адреса пустыми, встроенные прокси отключатся — приложение всё
равно соберётся и будет работать, просто в списке прокси не будет
предзаданных записей.
## Нативная библиотека Xray (libxray.so)
Ядро прокси — небольшая Go-обёртка над xray-core, собранная как разделяемая
JNI-библиотека. Исходники в `libxray/`. Скомпилированный `libxray.so` исключён
из git и собирается локально.
Сборка под Android arm64 (нужны Go и Android NDK):
```sh
cd libxray
go mod tidy
set CGO_ENABLED=1
set GOOS=android
set GOARCH=arm64
set CC=<NDK>/toolchains/llvm/prebuilt/<host>/bin/aarch64-linux-android21-clang
go build -buildmode=c-shared -o ../TMessagesProj/src/main/jniLibs/arm64-v8a/libxray.so .
```
## Сборка приложения
Обычная сборка через Gradle:
```sh
./gradlew :TMessagesProj_App:assembleRelease -Pandroid.injected.build.abi.filter=arm64-v8a
```
Итоговый APK называется `FoxiGram-<версия>-<код>-<abi>.apk`.
## Примечания
- `google-services.json`, ключи подписи и `local.properties` не хранятся в
репозитории. Для релизной сборки подставьте свои.
- Это форк для личного использования. Основан на Nekogram, который основан на
Telegram для Android.

View file

@ -31,7 +31,7 @@ public class BlurredTextSpan extends ReplacementSpan {
private int cachePad; private int cachePad;
public BlurredTextSpan(String text) { public BlurredTextSpan(String text) {
this(text, AndroidUtilities.dp(3.5f)); this(text, AndroidUtilities.dp(7f));
} }
public BlurredTextSpan(String text, float blurRadius) { public BlurredTextSpan(String text, float blurRadius) {
@ -104,6 +104,10 @@ public class BlurredTextSpan extends ReplacementSpan {
p.setColor(color); p.setColor(color);
p.setTypeface(paint.getTypeface()); p.setTypeface(paint.getTypeface());
p.setMaskFilter(new BlurMaskFilter(blurRadius, BlurMaskFilter.Blur.NORMAL)); p.setMaskFilter(new BlurMaskFilter(blurRadius, BlurMaskFilter.Blur.NORMAL));
c.drawText(text, pad, cacheBaseline, p); // A strong blur fades the glyphs to near-transparency; draw the blurred
// text several times so it stays a dense, unreadable smudge.
for (int i = 0; i < 4; i++) {
c.drawText(text, pad, cacheBaseline, p);
}
} }
} }