ClashMetaForAndroid README

The project's README from github.com/MetaCubeX/ClashMetaForAndroid. As one markdown file: README.md.

Clash Meta for Android

A Graphical user interface of Clash.Meta for Android

Feature

Feature of Clash.Meta

Get it on F-Droid

Requirement

Build

  1. Update submodules

    git submodule update --init --recursive
    
  2. Install OpenJDK 11, Android SDK, CMake and Golang

  3. Create local.properties in project root with

    sdk.dir=/path/to/android-sdk
    
  4. (Optional) Custom app package name. Add the following configuration to local.properties.

    # config your ownn applicationId, or it will be 'com.github.metacubex.clash'
    custom.application.id=com.my.compile.clash
    # remove application id suffix, or the applicaion id will be 'com.github.metacubex.clash.alpha'
    remove.suffix=true
    
  5. Create signing.properties in project root with

    keystore.path=/path/to/keystore/file
    keystore.password=<key store password>
    key.alias=<key alias>
    key.password=<key password>
    
  6. Build

    ./gradlew app:assembleAlphaRelease
    

Automation

APP package name is com.github.metacubex.clash.meta

Contribution and Project Maintenance

Meta Kernel

Maintenance

ClashMetaForAndroid (MetaCubeX/ClashMetaForAndroid)

Searching Database…

What is this?Clash Meta for Android (CMFA) is the graphical Android app for Clash.Meta, letting you run a rule-based proxy/VPN tunnel on your phone with a UI instead of editing config files by hand.
Is this an app or a library I'd import into my own project?It is a standalone Android application (an APK you install and run), not a library — it's a Kotlin GUI wrapper around the Go-based Clash.Meta proxy kernel.
How do I get it running on my device?The README documents building it yourself from source: clone with submodules, then run `./gradlew app:assembleAlphaRelease` to produce the APK, optionally signing it with your own keystore via local.properties.
What do I need on my machine to build it?You need OpenJDK 11, the Android SDK, CMake, and Golang installed before building, since the underlying kernel is compiled from Go.
What Android versions and architectures does it run on?Android 5.0 is the minimum supported version, with Android 7.0+ recommended; it supports armeabi-v7a, arm64-v8a, x86, and x86_64 architectures.
Can other apps control Clash.Meta automatically?Yes, external apps can send intents to the ExternalControlActivity to toggle, start, or stop the Clash.Meta service, and to import a profile via a clash:// or clashmeta:// URL scheme.
Where does the actual proxy kernel come from?CMFA uses the kernel from the android-real branch of MetaCubeX/Clash.Meta, which merges the main Alpha branch with Android-specific patches.
How are new kernel versions kept in sync with this Android app?A GitHub Action automatically triggers when the Clash.Meta kernel updates, pulling the new version, updating Go dependencies, and opening a PR for review.
Creator
MetaCubeX
Size
4.6 MB
Stars
47.8K
Age
4y
Commits · 90 Days