Awesome
OverTLS & SSRoT Android 客户端
由 Shadowsocks Android 客户端修改而来.
支持 OverTLS, 一個新代理,相當於是 SSRoT 去掉 SSR 和 SS, 唯獨保留 oT 的 Rust 實現,快如閃電,穩如老狗。
支持 SSRoT 协议。
编译
工具準備
-
- Android SDK Build-Tools 31.0.0
- Android SDK Platform 33
- NDK (Side by side) 25.1.8937393
- Android SDK Tools
-
- Install rust on your PC from rustup
- Some Android targets (arm64, arm, x86_64, x86) for rust.
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
獲取源碼
git clone --recursive https://github.com/ShadowsocksR-Live/ssrDroid.git
cd ssrDroid
編譯
# 在 Windows 下,要設置 JAVA_HOME 環境變量。
set JAVA_HOME="C:\Program Files\Android\Android Studio\jbr"
# 在 macOS 下,设置 JAVA_HOME 环境变量的命令为
export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"
# 在 Linux 里可以直接使用 系统预安装的 Java 环境,不用再设置自己的 JAVA_HOME 环境变量。
# 請準備 20G 硬盤空間。
# 編譯時帶的開關有 "assembleDebug" 或 "assembleRelease", 分別表示 debug 或 release 编译。
# 建议编辑 mobile/build.gradle ,修改 applicationId 以规避检测
./gradlew assembleDebug
./gradlew assembleRelease
# 在 windows 系統下,上述編譯命令應該是:
.\gradlew.bat assembleDebug
.\gradlew.bat assembleRelease
# 將編譯出的 apk 包安裝到當前連接到電腦上的手機裏:
adb install mobile/build/outputs/apk/release/ssrdroid-release.apk
贡献
欢迎问题修复,功能添加及翻译。其中问题修复和功能添加请优先考虑为上游贡献,翻译请以简体中文为底本。
许可
GPLv3
使用的库
<ul> <li>redsocks: <a href="https://github.com/shadowsocks/redsocks/blob/shadowsocks-android/README">APL 2.0</a></li> <li>mbed TLS: <a href="https://github.com/ARMmbed/mbedtls/blob/development/LICENSE">APL 2.0</a></li> <li>libevent: <a href="https://github.com/shadowsocks/libevent/blob/master/LICENSE">BSD</a></li> <li>pcre: <a href="https://android.googlesource.com/platform/external/pcre/+/master/dist2/LICENCE">BSD</a></li> <li>ssr-libev: <a href="https://github.com/ssrlive/ssr-libev/blob/master/LICENSE">GPLv3</a></li> <li>libsodium: <a href="https://github.com/jedisct1/libsodium/blob/master/LICENSE">ISC</a></li> </ul> <ul> <li>AndroidX: <a href="https://android.googlesource.com/platform/frameworks/support/+/androidx-master-dev/LICENSE.txt">APL 2.0</a></li> <li>kotlin: <a href="https://github.com/JetBrains/kotlin/blob/master/license/LICENSE.txt">APL 2.0</a></li> <li>material: <a href="https://github.com/material-components/material-components-android/blob/master/LICENSE">APL 2.0</a></li> <li>gson: <a href="https://github.com/google/gson/blob/master/LICENSE">APL 2.0</a></li> <li>preferencex-simplemenu: <a href="https://github.com/takisoft/preferencex-android/blob/master/LICENSE">APL 2.0</a></li> <li>android-plugin-api-for-locale: <a href="https://github.com/twofortyfouram/android-plugin-api-for-locale/blob/master/LICENSE.txt">APL 2.0</a></li> <li>qrgen: <a href="https://github.com/kenglxn/QRGen">APL 2.0</a></li> </ul>