Configuración para proyectos React Native (WSL2)
| Fredy de la Torre
- React Native
- WSL2
- Android
- ADB
| Fredy de la Torre
Esta guía resume los pasos necesarios para levantar un proyecto React Native usando WSL2, con la configuración reproducible de este equipo. Está organizada por secciones: variables de entorno, preparación del proyecto, conexión de dispositivos (físicos y emuladores desde Windows) y un resumen del estado del entorno.
/home/tu_usuario/Android/Sdk).adb disponible (Platform Tools).Añade estas variables a tu ~/.bashrc o ~/.zshrc en WSL (ajusta la ruta si usas otro usuario):
export ANDROID_HOME=$HOME/Android/Sdk
export ANDROID_SDK_ROOT=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/cmdline-tools/latest/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
export PATH=$PATH:$ANDROID_HOME/emulator
Después de editar, recarga el shell:
source ~/.bashrc # o ~/.zshrc
En cada proyecto crea (si no existe) el archivo android/local.properties apuntando al SDK local:
echo "sdk.dir = /home/$USER/Android/Sdk" > android/local.properties
Con esto, el proyecto Android utilizará el SDK del sistema y evitarás problemas de rutas.
Flujo típico para usar un dispositivo Android vía TCP/IP (puedes ejecutar algunos pasos desde Windows o WSL):
adb tcpip 5555
adb connect 192.168.68.105:5555
adb devices
yarn start:standalone
yarn android
Si necesitas volver al modo USB:
adb usb
Si el emulador corre en Windows y quieres controlarlo desde WSL2, realiza estas configuraciones (solo una vez):
# Forward del puerto 5555 para ADB
netsh interface portproxy add v4tov4 listenport=5555 listenaddress=0.0.0.0 connectport=5555 connectaddress=127.0.0.1
# Permitir ADB por TCP en firewall
New-NetFirewallRule -DisplayName "ADB TCP WSL2" -Direction Inbound -Protocol TCP -LocalPort 5555 -Action Allow
Si quieres eliminar estas reglas más tarde:
netsh interface portproxy delete v4tov4 listenport=5555 listenaddress=0.0.0.0
Remove-NetFirewallRule -DisplayName "ADB TCP WSL2"
Inicia el emulador desde Android Studio (Windows).
Habilita ADB TCP en el emulador (desde Windows):
adb devices
# si es necesario, especifica el emulador
adb -s emulator-5556 tcpip 5555
adb connect 127.0.0.1:5555
adb devices
ipconfig | findstr IPv4
Busca la IP del adaptador WSL (ejemplo: 172.19.64.1) y conéctate desde WSL:
adb connect 172.19.64.1:5555
adb devices
yarn start:standalone
yarn android
/home/dltfred/Android/Sdk (instalación completa)ANDROID_HOME, ANDROID_SDK_ROOT.PATH incluye cmdline-tools, platform-tools y emulator.ipconfig si falla la conexión.adb devices muestra el emulador como offline, ejecuta adb kill-server y adb start-server en WSL y/o en Windows según corresponda.Con estas configuraciones puedes desarrollar y probar aplicaciones React Native desde WSL2 conectando tanto dispositivos físicos como emuladores de Windows. Si quieres, puedo:
adb.android/local.properties automáticamente.¿Cuál de estas opciones quieres que haga ahora?