Saltar al contenido principal

Cómo usar la documentación de Capgo para actualizaciones OTA

Aprende a implementar actualizaciones Over-the-Air seguras en tus apps de Capacitor con la documentación completa y la guía paso a paso de Capgo.

Cómo usar la documentación de Capgo para actualizaciones OTA Capgo: ilustración del blog

Need faster de apps más rápidas sin retrasos de la app store? Capgo te permite enviar actualizaciones Over-the-Air (OTA) seguras al instante a tus usuarios. Sáltate las revisiones de las tiendas de apps y mantén tu app actualizada fácilmente.

Puntos clave:

  • ¿Qué es Capgo? Una plataforma de código abierto para actualizaciones en vivo en Capacitor apps.
  • ¿Por qué usar actualizaciones OTA? Ahorra tiempo, mejora la experiencia del usuario y corrige errores rápidamente.
  • ¿Cómo empezar?
    • Instala el plugin de Capgo: npm install @capgo/capacitor-updater
    • Configura tu app con una clave de API.
    • Usa canales como “production” o “beta” para despliegues dirigidos.
  • Funciones avanzadas: Cifrado de extremo a extremo, manejo de errores e integración con CI/CD.

La documentación de Capgo (capgo.app/docs) ofrece instrucciones paso a paso para la configuración, seguridad y solución de problemas. Desde la instalación hasta configuraciones avanzadas, es tu guía para actualizaciones sin interrupciones.

Capgo, plugin de CapacitorJs para Live update

Interfaz del dashboard de Capgo Live Update

Uso de la documentación de Capgo

Navegar la documentación de forma eficaz es esencial al trabajar con actualizaciones OTA. La documentación de Capgo ofrece una guía detallada para integrar Capacitor en aplicaciones de Capacitor.

Dónde encontrar la documentación

Puedes acceder a la documentación de Capgo en capgo.app/docs [1]. Está organizada en secciones según propósitos específicos:

Sección Propósito Temas clave
Primeros pasos Configuración inicial Pasos de instalación, Configuración de la clave de API
Configuración Configuración principal Configuración de plugins, entorno
Referencia de API Detalles técnicos Métodos, parámetros, valores de retorno
Seguridad Medidas de protección Configuración de cifrado, verificación de firma
Solución de problemas Problem-solving Problemas comunes, herramientas de diagnóstico

Términos y conceptos clave

Estos son algunos términos clave que encontrarás:

  • Canales: Son flujos de actualización para controlar la distribución de versiones. Por ejemplo, puedes configurar canales como “production”, “beta” y “staging” para distintos grupos de usuarios [4].
  • Políticas de actualización: Definen cómo se entregan y aplican las actualizaciones. Las opciones incluyen descargas automáticas, momento de instalación y prompts para el usuario [1].
  • Escuchadores de estado de la app: Estos componentes rastrean si la app está en primer plano o en segundo plano [4].
  • Bundles: Archivos de actualización empaquetados que contienen la nueva versión de tu app, incluidos assets, cambios de code y actualizaciones de configuración [4].

Ejemplos y tutoriales de Code

La documentación proporciona ejemplos de code para simplificar la integración. Aquí tienes un ejemplo básico usando TypeScript/JavaScript:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Initialize the updater
await CapacitorUpdater.notifyAppReady()

Para casos de uso más avanzados, la documentación incluye ejemplos del mundo real [2][3], como:

  • Cambiar canales para pruebas A/B
  • Custom update flows with user prompts
  • Manejo de errores e implementación de rollbacks
  • Integración de actualizaciones con pipelines CI/CD

Cada tutorial también destaca consideraciones de rendimiento y aspectos de seguridad, ayudándote a tomar decisiones informadas. La documentación se actualiza con frecuencia para incluir las últimas funciones y mejores prácticas [1].

Para detalles de implementación, consulta la guía de configuración a continuación.

Configuración de actualizaciones OTA

Configura actualizaciones OTA en Capgo para optimizar tu proceso de despliegue. Sigue estos pasos y consejos para una configuración sin complicaciones.

Pasos básicos de configuración

Comienza instalando el plugin Capgo en tu proyecto Capacitor:

npm install @capgo/capacitor-updater
npx cap sync

A continuación, actualiza tu capacitor.config.json archivo con tu clave API de Capgo:

{
  "plugins": {
    "CapacitorUpdater": {
      "autoUpdate": true,
      "apiKey": "YOUR_API_KEY_HERE"
    }
  }
}

Luego, inicializa el updater en el archivo principal de tu app para detectar actualizaciones:

import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.notifyAppReady();

Una vez hecho esto, puedes configurar canales para gestionar distintos flujos de actualización.

Configuración de canales de actualización

Organiza tus canales de actualización según tus necesidades de despliegue:

Tipo de canal Propósito Caso de uso
Producción Releases estables Base general de usuarios
Staging Pruebas pre-lanzamiento Equipo de QA y beta testers
Beta Pruebas de funcionalidades Primeros adoptantes

Para subir una actualización a un canal específico, usa el Capgo CLI:

npx @capgo/cli upload -c production

Métodos de actualización

Capgo ofrece dos formas principales de gestionar las actualizaciones:

Actualizaciones automáticas Activa las actualizaciones automáticas configurando autoUpdate: true en tu configuración. Esto garantiza que las actualizaciones se apliquen en segundo plano sin esfuerzo adicional por parte de los desarrolladores.

Actualizaciones manuales Para un mayor control, puedes gestionar las actualizaciones manualmente. Usa el siguiente patrón para buscar y aplicar actualizaciones:

// Check for updates
const update = await CapacitorUpdater.download();

// Install when ready
if (update) {
  await CapacitorUpdater.set(update);
}

Para actualizaciones críticas, puedes mostrar un prompt a los usuarios antes de continuar:

if (update.version > currentVersion) {
  const userConsent = await showUpdatePrompt();
  if (userConsent) {
    await CapacitorUpdater.set(update);
  }
}

También puedes dirigirte a grupos de usuarios específicos con IDs y canales personalizados:

await CapacitorUpdater.setCustomId('beta-tester-123');
await CapacitorUpdater.setChannel('beta');

Por último, asegúrate de incluir manejo de errores y opciones de rollback:

try {
  await CapacitorUpdater.set(update);
} catch (error) {
  await CapacitorUpdater.reset(); // Revert to the last working version
  console.error('Update failed:', error);
}

Con estos pasos, tu sistema de actualizaciones OTA está listo. Explora los ajustes avanzados para personalizar aún más el proceso de actualización.

sbb-itb-f9944d2

Ajustes avanzados

Mejora tu configuración de actualización OTA de Capgo con medidas de seguridad adicionales y configuraciones de actualización flexibles. Estas opciones garantizan una experiencia de actualización segura y fluida, cumpliendo con las directrices de las app stores.

Funciones de seguridad

Capgo ofrece protocolos de seguridad robustos para proteger tus bundles de actualización y entregarlos de forma segura a los usuarios. La plataforma utiliza cifrado de extremo a extremo con criptografía de clave pública para todas las actualizaciones [1]A continuación se explica cómo habilitar las funciones de seguridad clave:

// Enable bundle verification
await CapacitorUpdater.setVerifyBundles(true);

// Configure encryption settings
await CapacitorUpdater.configure({
  encryption: {
    enabled: true,
    failOnError: true
  }
});

Los componentes clave del sistema de protección de bundles incluyen:

Función de seguridad Descripción Implementación
Integridad del bundle Verifica la autenticidad del paquete con firmas criptográficas Activado automáticamente con setVerifyBundles()
Protección contra rollback Revierte a una versión estable si una actualización falla Integrado en el proceso de actualización
Control de acceso Gestiona actualizaciones con permisos basados en roles Configurado desde el dashboard

Ajustes de comportamiento de actualización

Puedes personalizar cómo se entregan e instalan las actualizaciones usando event listeners y opciones de configuración. Ajusta el momento y la interacción del usuario con estos ajustes:

// Listen for when an update is available
CapacitorUpdater.addListener('updateAvailable', async (info) => {
  if (info.version > currentVersion) {
    // Custom update logic based on app state
    const isAppInactive = await checkAppState();
    if (isAppInactive) {
      await CapacitorUpdater.download();
    }
  }
});

// Monitor download completion
CapacitorUpdater.addListener('downloadComplete', (info) => {
  console.log(`Update ${info.version} ready to install`);
  // Implement custom installation timing if desired
});

Para despliegues graduales, puedes configurar la distribución de actualizaciones directamente en el dashboard o con code:

// Set custom update conditions for a gradual rollout
await CapacitorUpdater.configure({
  rollout: {
    percentage: 25, // Start with 25% of users
    timeInterval: 24 // Increase rollout percentage every 24 hours
  }
});

Para gestionar comportamientos específicos de versiones:

// Handle version-specific update failures
CapacitorUpdater.addListener('updateFailed', async (info) => {
  if (info.error.code === 'VERSION_MISMATCH') {
    await CapacitorUpdater.reset(); // Revert to the last stable version
    // Optionally, handle error notification here
  }
});

Estos ajustes garantizan actualizaciones fiables y te permiten adaptar el proceso a las necesidades de tu app. Prueba siempre las actualizaciones a fondo en el entorno de staging de Capgo antes de lanzarlas a producción [2].

Guía de resolución de problemas

Los logs de error y las herramientas integradas de Capgo ayudan a resolver problemas de las actualizaciones OTA, manteniendo tu app en cumplimiento con los requisitos de las tiendas.

Problemas comunes y soluciones

Aquí tienes algunos problemas típicos y cómo resolverlos:

  • Descargas fallidas Síntomas: Las descargas se congelan o no se completan. Solución: Comprueba tu conexión de red, confirma que la URL de actualización es válida y añade mecanismos de reintento para gestionar las interrupciones.

  • Conflictos de versión Síntomas: Las actualizaciones no se instalan o causan inestabilidad en la app. Solución: Usa números de versión claros para evitar conflictos e implementa opciones de rollback por seguridad.

  • Errores de instalación Síntomas: Las actualizaciones fallan o activan rollbacks automáticos. Solución: Asegúrate de llamar a notifyAppReady() después de una actualización exitosa para prevenir rollbacks.

Para actualizaciones mayores a 50MB, dividirlos en archivos más pequeños puede mejorar el rendimiento en dispositivos Android [5].

Usa registros de errores detallados para detectar problemas temprano. Por ejemplo, implementa este listener:

CapacitorUpdater.addListener('updateFailed', (error) => {
  console.log(`Update failed: ${error.code}`);
  logUpdateError({
    errorCode: error.code,
    deviceInfo: error.device,
    timestamp: new Date().toISOString()
  });
});

Al combinar registros de errores con precomprobaciones, puedes manejar estos problemas de forma efectiva antes de centrarte en el cumplimiento.

Reglas de la App Store

Las correcciones técnicas no bastan: tus actualizaciones también deben cumplir con las directrices de las tiendas de aplicaciones.

Requisitos de Apple App Store:

  • Transparencia para el usuario: Informa claramente a los usuarios sobre el contenido de la actualización y obtén su consentimiento.
  • Funcionalidad principal: Ensure your app’s main features remain intact as reviewed.
  • Medidas de seguridad: Utiliza métodos seguros para transmitir las actualizaciones.

Implementación en Android:

await CapacitorUpdater.configure({
  updateNotification: {
    title: "Update Available",
    message: "A new version is available. Please update to access the latest features.",
    requireUserConsent: true
  }
});

Buenas prácticas:

  • Control de versiones: Implementa las actualizaciones gradualmente para reducir conflictos.
  • Notificaciones de actualización: Ofrece alertas de actualización claras y fáciles de usar.
  • Seguridad: Verifica la integridad del bundle y usa cifrado para proteger los datos.

Resumen

Esta sección resume las ideas principales de la guía.

La documentación de Capgo ofrece instrucciones claras para integrar actualizaciones OTA en apps de Capacitor cumpliendo con las normativas de las app stores.

Usando los recursos de Capgo, los desarrolladores pueden implementar funciones esenciales como cifrado de extremo a extremo y integración con CI/CD, cubriendo desde la configuración inicial hasta configuraciones avanzadas [1].

Áreas clave de implementación

Aspecto Enfoque principal Dónde encontrarlo
Seguridad Cifrado y comprobaciones de integridad Funciones de seguridad sección
Cumplimiento Cumplir con los requisitos de Apple y Android Reglas de la App Store guía
Gestión de actualizaciones Control de versiones y opciones de rollback Métodos de actualización guía
Manejo de errores Pasos de registro y solución de problemas Guía de resolución de problemas

Estas áreas forman la base del sistema de gestión de actualizaciones de Capgo.

Las herramientas de CLI y analíticas de Capgo simplifican la gestión de actualizaciones durante todo el ciclo de vida de tu app [1].

Para más soporte, puedes explorar recursos adicionales como documentación de API, proyectos de ejemplo, y foros de la comunidad [2].

Continúa desde Cómo usar la documentación de Capgo para actualizaciones OTA

Si estás usando Cómo usar la documentación de Capgo para actualizaciones OTA para planificar la seguridad y el cumplimiento, conéctalo con Cifrado para los detalles de implementación en Cifrado, Cumplimiento para los detalles de implementación en Cumplimiento, Escáner de seguridad de Capgo para el flujo de trabajo del producto en Capgo Security Scanner, Seguridad de Capgo para el flujo de trabajo del producto en Capgo Security, y Centro de confianza de Capgo para el flujo de trabajo del producto en Capgo Trust Center.

Live updates para apps Capacitor

Cuando un bug de la capa web está en producción, publica el fix a través de Capgo en lugar de esperar días a la aprobación de la app store. Los usuarios reciben la actualización en segundo plano mientras los cambios nativos siguen el flujo de revisión habitual.

Lo último de nuestro blog

Capgo te da la información clave que necesitas para crear una app móvil realmente profesional.