> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# Compilación y verificación en dispositivos

Separa una exportación Expo correcta de la preparación para un lanzamiento.

## Configuración y ajustes

Antes de cualquier paso, lea [Antes de comenzar](https://supastack.dev/es/docs/web/before-you-start.md) y [Conceptos básicos del terminal](https://supastack.dev/es/docs/web/terminal-basics.md). Estas instrucciones suponen que abrió el monorepo supastack completo en VS Code; su paquete raíz.json marca la raíz del repositorio. En los comandos pnpm, un paquete de espacio de trabajo es una aplicación o una carpeta de código compartido; En el producto, un espacio de trabajo es el contenedor de datos y el límite de seguridad de un equipo. corepack pnpm --filter ... selecciona un paquete del monorepo mientras los comandos se ejecutan desde su raíz. Si abrió solo una carpeta sincronizada para dispositivos móviles o de escritorio, no contiene el backend web, la configuración de Docker ni los scripts raíz: ejecute el backend desde este monorepo o un servidor alojado accesible y use los propios scripts de la carpeta de la plataforma. Una variable de entorno es una configuración con nombre almacenada en un archivo .env local o en su panel de hosting; reinicie la aplicación correspondiente después de cambiarla y mantenga los secretos del servidor fuera de los valores NEXT_PUBLIC_ y EXPO_PUBLIC_.

1. Abra apps/mobile/eas.json y apps/mobile/app.json en VS Code para revisar las configuraciones de desarrollo, vista previa y producción.

2. Agregue el cliente de desarrollo nativo desde la raíz del repositorio con corepack pnpm --filter @supastack/mobile exec expo install expo-dev-client. Ejecute corepack pnpm --filter @supastack/mobile typecheck, luego corepack pnpm --filter @supastack/mobile build para la exportación de JavaScript local.

3. Para pruebas nativas, inicie sesión en su cuenta Expo, cambie la carpeta del terminal con cd apps/mobile y luego ejecute npx eas-cli@latest build --platform android --profile development. Utilice ios para solicitar una compilación de iOS en la nube EAS desde cualquier sistema operativo; Se necesita una Mac con Xcode para ejecutar el simulador de iOS o compilarlo localmente. Se esperaba: la exportación verifica el paquete de JavaScript y EAS produce una aplicación de desarrollo nativa instalable. Consulte la [guía de compilación de desarrollo de Expo] (https://docs.expo.dev/develop/development-builds/faq/) para saber por qué Expo Go no puede agregar bibliotecas nativas.

La compilación del espacio móvil ejecuta su script de exportación. Esto valida el empaquetado para los destinos configurados; la firma de tienda, la configuración de distribución y la aceptación en dispositivos físicos son trabajos independientes.

```
corepack pnpm --filter @supastack/mobile typecheck
corepack pnpm --filter @supastack/mobile test
corepack pnpm --filter @supastack/mobile build
```


## Comandos para copiar

Siga los comentarios para ver en qué carpeta se ejecuta un comando. Si dos terminales están etiquetados, abra dos ventanas de terminal y mantenga el primer comando ejecutándose mientras usa el segundo.

```
# From the monorepo root, install the native development client once:
corepack pnpm --filter @supastack/mobile exec expo install expo-dev-client
corepack pnpm --filter @supastack/mobile typecheck
corepack pnpm --filter @supastack/mobile build

# EAS needs to run where apps/mobile/eas.json is located:
cd apps/mobile
npx eas-cli@latest build --platform android --profile development
```


## Flujo de implementación

Ejecuta las pruebas de contratos compartidos después de cambiar un paquete consumido por móvil. Revisa las áreas seguras nativas, el comportamiento del teclado, el tamaño legible del texto y el movimiento reducido en los dispositivos que quieras admitir.

Mantén las compras nativas detrás del límite existente de RevenueCat. Una compilación correcta no debe introducir Stripe Checkout en la interfaz móvil como sustituto de una integración de compra nativa verificada.

Use un desarrollo EAS en iOS o Android para validar `react-native-purchases` con productos sandbox configurados. Expo Go y la exportación del espacio de trabajo no validan transacciones de las tiendas.


## Verificación y solución de problemas

Si la compilación EAS dice que falta expo-dev-client, repita su comando de instalación y confirme que apps/mobile/package.json ahora lo incluye. Ejecute EAS desde apps/mobile para que encuentre eas.json. Si EAS informa que falta un proyecto o una configuración de firma, verifique su cuenta Expo y la configuración del proyecto. Expo Go y una exportación exitosa aún no prueban StoreKit o Play Billing; utilice una compilación de desarrollo EAS con productos sandbox. Una compilación de iOS en la nube se puede iniciar en Windows o Linux; solo el trabajo de compilación/simulador de iOS local necesita una Mac con Xcode.

Registra el dispositivo, la compilación, el entorno de API y el método de inicio de sesión usados para la aceptación. Verifica el retorno de enlaces profundos, la restauración de sesión, los derechos denegados y el cierre de sesión. Informa por separado del éxito de la exportación y de la verificación de tiendas/dispositivos.

Cuando la exportación termine correctamente y el objetivo sea lanzar, sigue Enviar a las tiendas de aplicaciones: los perfiles eas.json y los scripts build:/submit: incluidos llevan la aplicación a Google Play y App Store.


Si quieres continuar la configuración, lee [Publicación en las tiendas de aplicaciones](https://supastack.dev/es/docs/mobile/publishing.md).


## Siguiente

[Publicación en las tiendas de aplicaciones](https://supastack.dev/es/docs/mobile/publishing.md)
