The SDK is a set of independently versioned packages that sdkmanager (or Android Studio 234 's SDK Manager) installs by package path. cordova-android 15.1.0 compiles against API 36 and requires Build Tools 36.0.0 or newer. platform-tools holds adb; platforms;android-36 holds the android.jar stubs your code compiles against; build-tools;36.0.0 holds aapt2, d8, zipalign and apksigner; and emulator plus a system image let you boot a virtual device.
sdkmanager --licenses
sdkmanager "platform-tools" "platforms;android-36" "build-tools;36.0.0" \
"emulator" "system-images;android-36;google_apis;x86_64"google_apis images carry the Google Play 1 services APIs but no Play Store app, which google_apis_playstore images add. Choose x86_64 on Intel and AMD hosts and arm64-v8a on Apple silicon, so the hypervisor can accelerate the image. --list_installed prints a table wider than this page, so filter it:
sdkmanager --list_installed 2>/dev/null |
awk -F' *[|] *' '/;|^ (emulator|platform-tools)/ {printf "%-45s %s\n", $1, $2}'build-tools;35.0.0 35.0.0 build-tools;36.0.0 36.0.0 build-tools;37.0.0 37.0.0 cmake;3.22.1 3.22.1 emulator 37.1.11 platform-tools 37.0.1 platforms;android-36 2 platforms;android-37.0 2 system-images;android-36;google_apis;x86_64 7
API 37 and Build Tools 37 serve Jetpack Compose 234 (Android with Kotlin), and CMake serves React Native 36,878 (React Native). Three Build Tools versions are harmless: cordova-android picks the highest installed one within the major version of its minimum, so it uses 36.0.0. Note the dotted android-37.0: from API 37 on, platform packages carry a minor version.