- Prerequisites
- Installation
- Quick Start
- Commands
- Command Reference
- Output
- Examples
- Support & Community
Before using apkgen-cli, ensure your environment meets these requirements:
- Termux installed from F-Droid (recommended) or GitHub
- TermuxVoid repository configured
- Android 7+ with ~1GB free storage
- Working internet connection for initial setup
Getting started is seamless. Run the following in your Termux terminal:
apt install apkgen-cli -yTip
After installation, run apkgen help to verify everything is working correctly.
# Open the interactive menu
apkgen
# Or run commands directly:
# Scaffold a new Java project
apkgen create myapp
# Enter the project directory
cd myapp
# Build a debug APK
apkgen build debug
# Output: app/build/outputs/apk/debug/app-debug.apkLaunches an interactive menu for creating, building and cleaning projects. If there is no TTY (or gum is unavailable), it prints help instead, so scripts never get stuck in a prompt.
apkgenClones the project template into a new directory and prompts for app name and package name. Defaults to Java if no flag is specified.
# Java project (default)
apkgen create myapp
# Kotlin project
apkgen create myapp --kotlin
# Flutter project
apkgen create myapp --flutter
# Native C++ project
apkgen create myapp --nativecpp
# Native C project
apkgen create myapp --nativecCompiles a debug APK. The project type is auto-detected: Flutter projects get split ABI outputs, everything else uses Gradle.
apkgen build debugCompiles a release APK. Flutter projects produce a universal APK signed with the debug key (testing only); Gradle projects produce an unsigned APK you sign manually with apksigner or jarsigner.
apkgen build releaseLegacy alias for Flutter projects. Defaults to debug; accepts debug or release.
apkgen build flutter
apkgen build flutter releaseRemoves all build artifacts from the project directory.
apkgen cleanPrints the apkgen version.
apkgen versionPrints usage information.
apkgen help| Command | Description |
|---|---|
apkgen |
Open the interactive menu |
create <dir> |
Scaffold Java project (default) |
create <dir> --kotlin |
Scaffold Kotlin project |
create <dir> --flutter |
Scaffold Flutter project |
create <dir> --nativecpp |
Scaffold Native C++ project |
create <dir> --nativec |
Scaffold Native C project |
build debug |
Build debug APK (auto-detects Flutter/Gradle) |
build release |
Build release APK (auto-detects Flutter/Gradle) |
build flutter |
Legacy Flutter alias (debug by default) |
clean |
Remove build outputs |
version |
Show the apkgen version |
help |
Show help text |
Built APKs are placed in:
app/build/outputs/apk/
├── debug/app-debug.apk
└── release/app-release-unsigned.apk
build/app/outputs/flutter-apk/
├── app-<abi>-debug.apk # one per ABI (debug)
└── app-release.apk # universal (release, debug-signed)
# Create and build a Java app
apkgen create myapp
cd myapp && apkgen build debug
# Create and build a Kotlin app
apkgen create myapp --kotlin
cd myapp && apkgen build debug
# Create and build a Flutter app
apkgen create myflutter --flutter
cd myflutter && apkgen build debug
cd myflutter && apkgen build release
# Create a Native C++ app
apkgen create myapp --nativecpp
cd myapp && apkgen build debug
# Create a Native C app
apkgen create myapp --nativec
cd myapp && apkgen build debug
# Clean build artifacts
apkgen cleanJoin the TermuxVoid community for support and updates.
