40 lines
1.1 KiB
Markdown
40 lines
1.1 KiB
Markdown
# Android Build
|
|
|
|
Build the APK with:
|
|
|
|
```sh
|
|
make apk
|
|
```
|
|
|
|
Environment:
|
|
|
|
- `ANDROID_SDK_ROOT` defaults to `/opt/android-sdk`.
|
|
- `ANDROID_NDK_ROOT` defaults to `/opt/android-ndk`.
|
|
- `JAVA_HOME` defaults to `/usr/lib/jvm/java-25-openjdk`.
|
|
- `APP_ID` overrides the Android application id.
|
|
- `APK_OUT` overrides the output path.
|
|
- `APK_VERSION` overrides the packaged app version.
|
|
- `ANDROID_MIN_SDK` overrides the minimum supported Android SDK.
|
|
- `ANDROID_TARGET_SDK` overrides the target Android SDK.
|
|
|
|
Installed machine prerequisites expected by this repo:
|
|
|
|
- `android-sdk-cmdline-tools-latest`
|
|
- `android-sdk-build-tools`
|
|
- `android-platform-35`
|
|
- `android-sdk-platform-tools`
|
|
- a working JDK install
|
|
|
|
The repo tracks `gogio` as a Go tool, so the build runs through:
|
|
|
|
```sh
|
|
go tool gogio -target android ...
|
|
|
|
Note:
|
|
|
|
- Gio's Android doc currently references Java 1.8, but the Android build-tools
|
|
installed on this machine (`d8` from build-tools 37) do not run on Java 8.
|
|
- In this environment, KeePassGO's APK build requires a newer JDK runtime on
|
|
`PATH`, which is why the repo defaults `JAVA_HOME` to `/usr/lib/jvm/java-25-openjdk`.
|
|
```
|