Clash.Meta 的 Android 平台图形用户界面
继承 Clash.Meta 的所有功能
- Android 5.0+ (最低要求)
- Android 7.0+ (推荐)
armeabi-v7a、arm64-v8a、x86或x86_64架构
-
更新子模块
git submodule update --init --recursive
-
安装 OpenJDK 11、Android SDK、CMake 和 Golang
-
在项目根目录创建
local.properties文件,内容如下:sdk.dir=/path/to/android-sdk -
在项目根目录创建
signing.properties文件(用于签名):keystore.path=/path/to/keystore/file keystore.password=<key store password> key.alias=<key alias> key.password=<key password>
-
构建应用
./gradlew app:assembleMeta-AlphaRelease
应用包名为 com.github.metacubex.clash.meta
- 切换 Clash.Meta 服务状态
- 向活动
com.github.kr328.clash.ExternalControlActivity发送意图,动作为com.github.metacubex.clash.meta.action.TOGGLE_CLASH
- 向活动
- 启动 Clash.Meta 服务
- 向活动
com.github.kr328.clash.ExternalControlActivity发送意图,动作为com.github.metacubex.clash.meta.action.START_CLASH
- 向活动
- 停止 Clash.Meta 服务
- 向活动
com.github.kr328.clash.ExternalControlActivity发送意图,动作为com.github.metacubex.clash.meta.action.STOP_CLASH
- 向活动
- 导入配置文件
- URL Scheme:
clash://install-config?url=<encoded URI>或clashmeta://install-config?url=<encoded URI>
- URL Scheme:
- CMFA 使用
MetaCubeX/Clash.Meta仓库的android-real分支的内核,该分支是主Alpha分支和android-open的合并。- 如果你想为内核贡献通用功能,请向 Meta 内核仓库的
Alpha分支提交 PR。 - 如果你想为内核贡献 Android 特定的补丁,请向 Meta 内核仓库的
android-open分支提交 PR。
- 如果你想为内核贡献通用功能,请向 Meta 内核仓库的
- 当
MetaCubeX/Clash.Meta内核更新到新版本时,本仓库的Update Dependencies操作会自动触发。- 它将拉取新版本的 Meta 内核,更新所有 Golang 依赖,并在无需人工干预的情况下创建 PR。
- 如果 PR 中存在任何编译错误,你需要在合并前修复。或者,你也可以直接合并 PR。
- 手动触发
Build Pre-Release操作将编译并发布一个PreRelease版本。 - 手动触发
Build Release操作将编译、标记并发布一个Release版本。- 你必须在
Release Tag空白处填入你想发布的标签,格式为v1.2.3。 build.gradle.kts中的versionName和versionCode将自动更新为你填写的标签。
- 你必须在
