--- id: "62" title: "gradle_run no detecta SDK en $HOME/android-sdk (donde lo deja install_android_sdk)" status: pendiente type: feature domain: - dev-ux scope: multi-app priority: media depends: [] blocks: [] related: [] created: 2026-05-10 updated: 2026-05-17 tags: [] --- ## Sintoma `gradle_run_bash_infra` resuelve `ANDROID_HOME` con default `$HOME/Android/Sdk`. Pero `install_android_sdk_bash_infra` instala en `$HOME/android-sdk` (lowercase, distinto path). Resultado: aunque el usuario tiene SDK Linux instalado via la funcion del propio registry, gradle_run no lo encuentra. ## Reproducir ```bash ./fn run install_android_sdk ls $HOME/android-sdk/ # OK, contiene cmdline-tools, platforms, etc. cd apps/ ./fn run gradle_unit_test . # falla porque ANDROID_HOME apunta a $HOME/Android/Sdk (no existe) ``` ## Fix propuesto En `bash/functions/infra/gradle_run.sh`, anadir orden de busqueda: ```bash if [[ -z "${ANDROID_HOME:-}" ]]; then for candidate in \ "$HOME/android-sdk" \ "$HOME/Android/Sdk" \ "${ANDROID_SDK_WIN:-/mnt/c/Users/$USER/AppData/Local/Android/Sdk}" do if [[ -d "$candidate" && -d "$candidate/platform-tools" ]]; then ANDROID_HOME="$candidate" break fi done fi ``` Tambien aplica a `ANDROID_SDK_DIR` para alinear con la funcion install. ## Validacion `unset ANDROID_HOME && bash bash/functions/infra/gradle_run.sh apps/counter_kt :app:tasks` debe corre OK con SDK en `$HOME/android-sdk`.