1
0
mirror of https://github.com/NekoX-Dev/NekoX.git synced 2024-11-26 22:59:25 +01:00
Go to file
2020-07-29 05:22:24 +00:00
.github Refind build scripts 2020-07-29 05:22:24 +00:00
bin Refind build scripts 2020-07-29 05:22:24 +00:00
gradle/wrapper Update to 6.3.0 (2040) 2020-07-26 11:03:38 +03:00
openpgp-api Refind build scripts 2020-07-29 05:22:24 +00:00
relaybaton Modules 2020-06-25 14:00:15 +00:00
ss-rust Refind build scripts 2020-07-29 05:22:24 +00:00
ssr-libev Refind build scripts 2020-07-29 05:22:24 +00:00
TMessagesProj Refind build scripts 2020-07-29 05:22:24 +00:00
Tools
.gitignore Update dependencies 2020-07-15 20:50:06 +08:00
.gitmodules Modules 2020-06-25 14:00:15 +00:00
apkdiff.py Fix apkdiff not checking entire files 2020-01-06 23:22:05 -08:00
build.gradle Add message sign with openkeychain 2020-07-26 23:27:38 +00:00
crowdin.yml Make it NekoX 2020-06-25 13:59:03 +00:00
Dockerfile Update to 6.3.0 (2040) 2020-07-26 11:03:38 +03:00
gradle.properties Fix call for Google Play version 2020-05-27 09:27:34 +08:00
gradlew Remove web translators & Fixes 2020-06-26 05:43:17 +00:00
gradlew.bat Make it NekoX 2020-06-25 13:59:03 +00:00
LICENSE Remove web translators & Fixes 2020-06-26 05:43:17 +00:00
README.md Refind build scripts 2020-07-29 05:22:24 +00:00
settings.gradle Add message sign with openkeychain 2020-07-26 23:27:38 +00:00

NekoX

NekoX is an open source third-party Telegram android app.

Telegram-FOSS Changes:

Replacement of non-FOSS, untrustworthy or suspicious binaries or source code:

  • Do location sharing with OpenStreetMap(osmdroid) instead of Google Maps
  • Use Twemoji emoji set instead of Apple's emoji
  • Google Play Services GCM replaced with Telegram's push service
  • Has to show a notification on Oreo+, ask Google
  • SECURITY: Old BoringSSL prebuilts are replaced with the newest upstream source code built at compile time
  • SECURITY: Old FFmpeg prebuilts are replaced with the newest upstream source code built at compile time
  • SECURITY: Bundled libWebP is updated

Removal of non-FOSS, untrustworthy or suspicious binaries or source code and their functionality:

  • Google Vision face detection and barcode scanning (Passport)
  • Google Wallet and Android Pay integration
  • Google Voice integration
  • HockeyApp crash reporting and self-updates
  • Google SMS retrieval. You have to type the code manually

Other:

  • Allow to set a proxy before login
  • Added the ability to parse locations from intents containing a geo:<lat>,<lon>,<zoom> string
  • Force static map previews from Telegram

Old 0penSource Nekogram Changes

We regret that Nekogram is no longer open source, but uses drklo/master to disguise open source.

  • Repeat others' message in one click.
  • Save to saved messages in one click.
  • Ignore messages from blocked users.
  • Forward messages without quoting.
  • Create a mention by user's ID.
  • Allow non-admin users to view group chat permissions and administrators.
  • Select a map preview provider for normal dialogs.
  • Promote/restrict user directly from contextual menu clicking on user's message.
  • Show user chat history in groups from contextual menu clicking on user's message.
  • Delete single downloaded file.
  • Customize stickers display size.
  • Show and export message details.
  • Unlimited favorite stickers.
  • Filter chats list: users, groups, channels, bots, admin, unmuted.
  • Multi-accounts (up to 8).
  • Log in with bot accounts.
  • Decide whether to sync contacts on first login.
  • Show ID and data center.
  • Transparent status bar.
  • Change displaying name order.
  • Hide mobile number from navigation menu drawer and settings menu.
  • Built-in Chinese and Japanese language.
  • Use system font and emojis.
  • Store cache into app's private directory.
  • Hide proxy sponsor channels.
  • Toogle to show sensitive media contents in public channels.

NekoX Changes

  • Built-in Vmess, Shadowsocks, SSR, RelayBaton (ESNI) proxies support
  • Built-in public proxy list
  • Proxy subscription support.
  • Proxies import and export, remarks, speed measurement, sorting, delete unusable nodes, etc.
  • Scan the qrcode (any link, can add a proxy).
  • The ( vemss / vmess1 / ss / ssr / rb ) proxy link in the message can be clicked.
  • Allow auto disable proxy when VPN is enabled
  • Proxy automatic switcher
  • Add stickers without sticker pack
  • Allow disable vibration
  • Sticker set list backup / restore / share
  • Full InstantView translation support
  • Translation support for selected text on input and in messages
  • Delete all messages in group
  • Dialog sorting is optional "Unread and can be prioritized for reminding" etc.
  • Allow to skip "regret within five seconds"
  • Unblock all users support
  • OpenKaychain client ( sign / verify / decrypt / import )
  • Google Cloud Translate / Yandex.Translate support
  • Custom cache directory (supports external storage)
  • Custom AppId and Hash (optional NekoX / Andorid / Android X or Manual input)
  • Custom server (official, test DC or Manual input)
  • Keep the original file name when downloading files
  • View the data center you belong to when you don't have an avatar
  • Proxies, groups, channels, sticker packs are able to shared as QRCodes.
  • Force English emoji keywords to be loaded
  • Add "@Name" when long press @ user option
  • Enhanced notification service, optional version without Google Services.
  • Built-in Material Design themes / Telegram X style icons

How to get Google Cloud Translate Key

https://telegra.ph/google-cloud-trans-key-04-26

Compilation Guide

Specify APP_ID and APP_HASH

Fill out TELEGRAM_APP_ID and TELEGRAM_APP_HASH in local.properties

Build Types

Debug

./gradlew assemble<Variant>Debug

The default debug key is used, and placing yours is not needed.

Release

./gradlew assemble<Variant>Release

The difference between release and other build types is that it adds fcm and firebase crash analysis, if you don't like them, use releaseNoGcm.

To compile the release version, please place your keysotre at TMessageProj/release.keystore, and fill in KEYSTORE_PASS, ALIAS_NAME, ALIAS_PASS in local.properties, environment variables are also recommended

If you don't use NekoX's APP_ID and APP_HASH, you need to register a physical firebase app and replace google-services.json to ensure fcm works

Foss

./gradlew assemble<Variant>Foss

OK, a version without firebase cloud messaging and precompiled native libraries, maybe this makes you feel more free, or your phone does not have Google services.

To compile the foss version, please refer to scripts.

Build Variants

Available variant list:

Full Mini ( without ss/ssr/v2ray proxies )

AppleEmoji
NotoEmoji
FacebookEmoji
NoEmoji

Localization

Join project at https://nekox.crowdin.com/nekox.

Credits

  • Telegram-FOSS: GPLv2
  • Nekogram: GPLv2 (No longer open source)
  • v2rayNG: GPLv3
  • AndroidLibV2rayLite: LGPLv3
  • shadowsocks-android: GPLv3
  • shadowsocksRb-android: GPLv3