This project is the Android client for the Candy VPN project: https://github.com/lanthora/candy
This client is built with a Go mobile library for the protocol logic.
You can download the latest version for Android directly from the Releases: https://github.com/Jercrox/Candy_Android_Client/releases
- Go 1.18+
- Android Studio / Android SDK
gomobiletool installed:go install golang.org/x/mobile/cmd/gomobile@latest gomobile init
Before building, you must create a local.properties file in the root of the Android directory to point to your Android SDK. This file is specific to your local machine and should not be committed to version control.
- Create a file named
local.propertiesin theAndroidfolder. - Add the following content (adjusting the path to match your user name):
## This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#
sdk.dir=C\:\\Users\\%username%\\AppData\\Local\\Android\\SdkNote: Replace %username% with your Windows session user name. Ensure the path points to where your Android SDK is actually installed.
- Navigate to the
candy_godirectory:cd candy_go - Build the Android AAR:
Note: You may need to create the
gomobile bind -target=android -o ../app/libs/candy.aar .
../app/libsdirectory if it doesn't exist.
- Open this
Androidfolder in Android Studio. - Sync the project with Gradle files.
- Build and Run on your device/emulator.
This project is licensed under the MIT License - see the LICENSE file for details.