Skip to content

android-sdk

Recipe card from the charly-check plugin (Commands — runtime CLI verbs).

android-sdk — the Android SDK toolchain candy

Section titled “android-sdk — the Android SDK toolchain candy”
Property Value
Install root /opt/android-sdk
Requires @github.com/opencharly/layer-java-openjdk (JDK 21)
Env ANDROID_HOME, ANDROID_SDK_ROOT = /opt/android-sdk
System image API-36 google_apis_playstore x86_64 (sdkmanager-fetched)

From CachyOS/Arch packages under /opt/android-sdk: cmdline-tools (sdkmanager/avdmanager), platform-tools (adb), build-tools 36 (aapt2), platform android-36, and the emulator. apkeep (the by-package-name app downloader the charly check adb install-app verb drives) is installed from its upstream precompiled x86_64 binary. The one component with no package anywhere — the API-36 google_apis_playstore x86_64 system image — is fetched by sdkmanager into a persistent cache and copied alongside the tools.

Compose it in a box (a named box’s candy: value is the box BODY):

android-dev:
candy:
base: cachyos-base
candy:
- '@github.com/opencharly/layer-android-sdk:v2026.xxx.yyyy'

The SDK lands at fixed paths under /opt/android-sdk, so it is verifiable by probing those paths and running adb version. Pair it with an emulator device (kind: android) and the adb:/appium: check verbs.

plan: check: steps assert /opt/android-sdk/cmdline-tools/latest/bin/sdkmanager, .../platform-tools/adb, .../build-tools/36.0.0/aapt2, .../emulator/emulator, .../platforms/android-36, and the fetched system-image directory all exist, that adb version reports the Android Debug Bridge banner, and that apkeep resolves on PATH.