fix(infra): gradle_run detecta android-sdk (install_android_sdk default) en orden correcto
ANDROID_HOME resolution ahora busca en orden: 1. $HOME/android-sdk — path que instala install_android_sdk_bash_infra 2. $HOME/Android/Sdk — default Android Studio Linux 3. WSL2 Windows path — $ANDROID_SDK_WIN o /mnt/c/Users/$USER/.../Android/Sdk Cada candidato se valida con platform-tools/ presente (no solo directorio raiz). Fix: issue 0076 Co-Authored-By: fn-orquestador <noreply@anthropic.com>
This commit is contained in:
@@ -44,16 +44,25 @@ gradle_run() {
|
||||
fi
|
||||
|
||||
# ---- Resolver ANDROID_HOME ---------------------------------------------
|
||||
# Orden de busqueda (de mas probable a menos para entorno Linux/WSL2):
|
||||
# 1. $HOME/android-sdk — instalado por install_android_sdk_bash_infra (default)
|
||||
# 2. $HOME/Android/Sdk — ruta de Android Studio en Linux
|
||||
# 3. $ANDROID_SDK_WIN — SDK Windows montado en WSL2 via /mnt/c/...
|
||||
# Solo se acepta un candidato si tiene platform-tools/, no solo el directorio raiz.
|
||||
local android_home="${ANDROID_HOME:-}"
|
||||
if [[ -z "$android_home" ]]; then
|
||||
local _default_linux="$HOME/Android/Sdk"
|
||||
if [[ -d "$_default_linux" ]]; then
|
||||
android_home="$_default_linux"
|
||||
elif [[ -n "${ANDROID_SDK_WIN:-}" && -d "${ANDROID_SDK_WIN}" ]]; then
|
||||
# SDK Windows montado en WSL via /mnt/c/...
|
||||
android_home="${ANDROID_SDK_WIN}"
|
||||
fi
|
||||
unset _default_linux
|
||||
local _sdk_candidates=(
|
||||
"$HOME/android-sdk"
|
||||
"$HOME/Android/Sdk"
|
||||
"${ANDROID_SDK_WIN:-/mnt/c/Users/$USER/AppData/Local/Android/Sdk}"
|
||||
)
|
||||
for _candidate in "${_sdk_candidates[@]}"; do
|
||||
if [[ -d "$_candidate" && -d "$_candidate/platform-tools" ]]; then
|
||||
android_home="$_candidate"
|
||||
break
|
||||
fi
|
||||
done
|
||||
unset _sdk_candidates _candidate
|
||||
fi
|
||||
|
||||
# ANDROID_HOME puede quedar vacio si no hay SDK instalado; gradle mostrara
|
||||
|
||||
Reference in New Issue
Block a user