Files

46 lines
1.3 KiB
Markdown
Raw Permalink Normal View History

# Building CellGuard
## Toolchain
| Component | Version |
|-------------------|-----------|
| Gradle (wrapper) | 8.9 |
| Android Gradle Plugin | 8.5.2 |
| Kotlin | 1.9.23 |
| Compose compiler | 1.5.11 |
| JDK | 21 |
| compileSdk / targetSdk | 35 |
| minSdk | 33 |
| Build tools | 35.0.0 |
These versions are mutually compatible: AGP 8.5.2 requires Gradle 8.7+ and JDK 17+
(JDK 21 is fine), and Kotlin 1.9.23 pins the Compose compiler extension to 1.5.11.
## Prerequisites
- JDK 21 installed at `/usr/lib/jvm/java-21-openjdk-arm64`
- Android SDK at `/home/snake/Android/Sdk` with:
- `platforms/android-35`
- `build-tools/35.0.0`
- Network access for the first build (downloads AndroidX, Compose BOM 2024.06.00,
and libsu 5.2.2 from Google, Maven Central, and JitPack).
## Build command (debug APK)
```bash
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-arm64
export ANDROID_HOME=/home/snake/Android/Sdk
cd /home/snake/CellGuard-app && ./gradlew :app:assembleDebug
```
## Output
The debug APK is written to:
```
/home/snake/CellGuard-app/app/build/outputs/apk/debug/app-debug.apk
```
For a release (unsigned) build, run `./gradlew :app:assembleRelease`; the artifact
lands in `app/build/outputs/apk/release/`.