⚠️ Configura las Credenciales de Android Primero
Requerido: Debes guardar tus credenciales de Android antes de compilar aplicaciones de lanzamiento.
Compila y envía aplicaciones Android a Google Play Store usando la infraestructura de nube segura de Capgo.
⚠️ Configura las Credenciales de Android Primero
Requerido: Debes guardar tus credenciales de Android antes de compilar aplicaciones de lanzamiento.
Las compilaciones Android se ejecutan en sandboxes seguros de Cloudflare:
Antes de compilar para Android, necesitas:
npx cap open androidPara compilaciones de lanzamiento, necesitas un keystore de firma:
| Tipo de Compilación | Keystore Requerido | Propósito |
|---|---|---|
| Debug | No | Solo pruebas, autogenerado |
| Release | Sí | Envío a Play Store |
Si aún no tienes un keystore, créalo:
keytool -genkey -v \ -keystore my-release-key.keystore \ -alias my-key-alias \ -keyalg RSA \ -keysize 2048 \ -validity 10000Responde las preguntas:
Al crear un keystore, necesitarás recordar:
KEYSTORE_STORE_PASSWORD): La contraseña para el archivo keystore en síKEYSTORE_KEY_ALIAS): El nombre/identificador para tu clave de firma dentro del keystoreKEYSTORE_KEY_PASSWORD): La contraseña para la clave específica (puede ser la misma que la contraseña del almacén)Flujo de trabajo de ejemplo:
# Lista los alias en tu keystore para verificarkeytool -list -keystore my-release-key.keystore
# Ver información detallada sobre tu clavekeytool -list -v -keystore my-release-key.keystore -alias my-key-aliasPara compilaciones de lanzamiento, configura estas credenciales:
# Firma de Android (Requerido para lanzamiento)ANDROID_KEYSTORE_FILE="<keystore-codificado-en-base64>"KEYSTORE_KEY_ALIAS="my-key-alias"KEYSTORE_KEY_PASSWORD="<contraseña-de-clave>"KEYSTORE_STORE_PASSWORD="<contraseña-de-almacén>"
# Publicación en Play Store (Opcional, para envío automático)PLAY_CONFIG_JSON="<json-de-cuenta-de-servicio-codificado-en-base64>"Archivo Keystore:
base64 -i my-release-key.keystore | pbcopyJSON de Cuenta de Servicio de Play Store:
base64 -i play-store-service-account.json | pbcopyLa cadena base64 ahora está en tu portapapeles.
Para habilitar las cargas automáticas a Play Store, necesitas crear una cuenta de servicio de Google Cloud con los permisos apropiados.
Crear Cuenta de Servicio en Google Cloud
Crear Clave JSON
Otorgar Permisos en Play Console
Aceptar la Invitación
Perfecto para pruebas sin firma:
npx @capgo/cli@latest build com.example.app \ --platform android \ --build-mode debugEsto crea un APK de debug que se puede instalar en cualquier dispositivo para pruebas.
Para envío a Play Store:
npx @capgo/cli@latest build com.example.app \ --platform android \ --build-mode releaseRequiere que las credenciales de firma estén configuradas como variables de entorno.
name: Build Android App
on: push: branches: [main]
jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6
- name: Setup Node.js uses: actions/setup-node@v6 with: node-version: '24'
- name: Install dependencies run: npm ci
- name: Build web assets run: npm run build
- name: Sync Capacitor run: npx cap sync android
- name: Build Android app env: CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} ANDROID_KEYSTORE_FILE: ${{ secrets.ANDROID_KEYSTORE }} KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_ALIAS }} KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }} KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }} PLAY_CONFIG_JSON: ${{ secrets.PLAY_STORE_CONFIG }} run: | npx @capgo/cli@latest build ${{ secrets.APP_ID }} \ --platform android \ --build-mode releaseInicialización del Sandbox (~5 segundos)
Configuración del Proyecto (~20 segundos)
Compilación Gradle (2-4 minutos)
Carga a Play Store (30 segundos, si está configurado)
Limpieza (inmediata)
Nuestro entorno de compilación Android incluye:
Por defecto, las compilaciones de Capgo crean:
Tiempos típicos de compilación Android:
| Tipo de Compilación | Tiempo Promedio |
|---|---|
| Debug | 2-3 minutos |
| Release (sin ProGuard) | 3-4 minutos |
| Release (con ProGuard) | 4-6 minutos |
Si tu aplicación tiene variantes de compilación personalizadas (ej., staging, production), usa build-config:
npx @capgo/cli@latest build com.example.app \ --platform android \ --build-mode release \ --build-config '{"variant":"staging"}'Esto compilará la variante stagingRelease.
Para aplicaciones con dimensiones de sabor:
--build-config '{"flavor":"premium","variant":"production"}'Esto compila la variante premiumProductionRelease.
“Contraseña de keystore incorrecta”
“Alias de clave no encontrado”
keytool -list -keystore my-release-key.keystore“Compilación Gradle falló”
./gradlew assembleReleasebuild.gradle“Carga a Play Store falló”
“Tiempo de espera de compilación agotado”
Busca estas fases clave en los registros de compilación:
→ Descargando dependencias...→ Ejecutando Gradle assembleRelease...→ Firmando APK/AAB...→ Subiendo a Play Store...✔ Compilación exitosaSi una compilación falla, el error específico de Gradle se mostrará en los registros.
Siempre asegúrate de que tu compilación Android funcione localmente:
cd android./gradlew assembleRelease# o./gradlew bundleReleaseCapgo lee la versión de tu capacitor.config.json:
{ "appId": "com.example.app", "appName": "My App", "version": "1.0.0", "build": "1"}Incrementa el número de build para cada lanzamiento.
Para compilaciones de lanzamiento, asegúrate de que las reglas de ProGuard estén configuradas correctamente:
-keep class com.getcapacitor.** { *; }-keep @com.getcapacitor.annotation.CapacitorPlugin public class * { @com.getcapacitor.annotation.PluginMethod public <methods>;}Mantén un ojo en el tamaño APK/AAB para asegurar que esté optimizado:
El CLI muestra el tamaño final:→ Tamaño APK: 12.4 MBSi tu aplicación es grande (>50 MB), considera:
Con PLAY_CONFIG_JSON configurado, las compilaciones se cargan automáticamente al canal de prueba interna de Play Console.
Si prefieres el envío manual: