Saltar al contenido principal

Etiquetado de Versión en Aplicaciones Capacitor

Aprenda los fundamentos del etiquetado de versión en aplicaciones Capacitor, incluyendo las mejores prácticas para actualizaciones, sincronización y automatización.

Martin Donadieu

Martin Donadieu

Especialista en Contenido

Etiquetado de Versión en Aplicaciones Capacitor

El etiquetado de versión es fundamental para gestionar Capacitor las aplicaciones. Garantiza actualizaciones suaves, registra cambios y mejora la confiabilidad de la aplicación en las plataformas iOS, Android y web. Aquí hay un resumen rápido:

  • ¿Por qué Importa?: Registra actualizaciones, habilita retrocesos y garantiza despliegues estables.
  • Semántica de Versión: Utilice MAJOR.MINOR.PATCH para indicar cambios importantes, nuevas características o correcciones de errores.
  • Sincronice en Todas las Plataformas: Alinea los números de versión en package.json, iOS Info.plist, y Android build.gradle.
  • Ayuda a la automatización: Automatiza actualizaciones con npm scripts y herramientas de CI/CD.
  • Actualizaciones en vivo: Herramientas como Capgo entregan actualizaciones a 95% de los usuarios en 24 horas.
  • Gestión de beta: Utiliza canales estructurados para versiones de alpha, beta y producción.

Comparación Rápida

CaracterísticaPropósitoEjemplo
Versión SemánticaSigue cambios de manera clara1.2.3 → 2.0.0
Sincroniza VersionesAlinea a través de plataformasnpx cap sync
AutomatizaciónAcelera actualizaciones de versionesnpm version patch
Actualizaciones en vivoAdopción de usuarios rápidoCapgo’s 95% en 24 horas
Canales de Prueba BetaFases de pruebas controladas1.3.0-beta.1

La etiquetado de versiones simplifica actualizaciones de aplicaciones, mantiene a los usuarios felices y garantiza que los desarrolladores puedan gestionar las versiones de manera efectiva.

¿Cómo configurar AUTOMÁTICAMENTE tu Capacitor proyecto ⚡️

Capacitor Framework Documentación del Sitio Web

Configuración de versión en Capacitor

Sigue estos pasos para asegurarte de un manejo de versiones consistente en todas las plataformas de tu Capacitor app.

Configuración de la Versión en package.json

El package.json archivo es la fuente principal para los detalles de la versión de tu app. Aquí tienes un ejemplo de cómo configurarlo:

{
  "name": "your-app-name",
  "version": "1.2.3",
  "private": true,
  "dependencies": {
    "@capacitor/core": "5.5.0",
    "@capacitor/ios": "5.5.0",
    "@capacitor/android": "5.5.0"
  }
}

Al actualizar el número de versión, utiliza las reglas de SemVer (versión semántica):

  • Versión mayor (1.x.x): Introduce cambios disruptivos.
  • Versión menor (x.2.x): Agrega nuevas características que son compatibles hacia atrás.
  • Versión de parche (x.x.3): Corrige errores o hace mejoras pequeñas.

Sincronizando las versiones de las plataformas

Es importante alinear los números de versión en todas las plataformas para una despliegue de aplicación suave.

PlataformaArchivo de configuraciónClave de versión
iOSInfo.plistCFBundleShortVersionString
Androidbuild.gradleversionName
Webpackage.jsonversión

Después de actualizar la versión en package.json, utilice este comando para sincronizar los cambios con las configuraciones de plataforma nativa:

npx cap sync

Usando Capacitor CLI para la Gestión de Versiones

La Capacitor CLI ofrece comandos útiles para gestionar versiones:

# Check the current version of Capacitor
npx cap --version

# Update Capacitor core and platform dependencies
npm install @capacitor/core@latest
npm install @capacitor/ios@latest
npm install @capacitor/android@latest

# Sync version changes to native platforms
npx cap sync

Mantener actualizado su Capacitor CLI garantiza la compatibilidad con características específicas de la versión y reduce el riesgo de incompatibilidades. Sigue estos pasos para mantener una versión correcta en tu aplicación.

Configuración de Versión Semántica

Conceptos básicos de Versión Semántica

Versión Semántica (SemVer) utiliza el formato MAJOR.MINOR.PATCH, donde cada parte indica un tipo específico de cambio:

Versión ComponentePropósito
MAJORIntroduce cambios importantes en el API
MINORAgrega nuevas características que siguen siendo compatibles con versiones anteriores
PATCHCorrige errores o mejora el rendimiento sin romper la compatibilidad

Este sistema garantiza que los desarrolladores puedan comunicar actualizaciones de manera clara mientras preservan la compatibilidad entre versiones de aplicaciones. Por ejemplo, pasar de 1.2.3 a 2.0.0 indica actualizaciones importantes y rompedoras que requieren un planificación cuidadosa.

Cuándo actualizar números de versión

Aquí está cómo decidir qué número de versión actualizar:

Tipo de ActualizaciónCuándo UsarEjemplo de Cambio de Versión
Actualización MayorFor breaking API changes or major UI redesigns1.2.3 → 2.0.0
Actualización MenorCuándo introducir nuevas características o marcar características como obsoletas1.2.3 → 1.3.0
Actualización de ParchePara correcciones de errores o ajustes de rendimiento pequeños1.2.3 → 1.2.4

"Practicamos el desarrollo ágil y @Capgo es crucial en la entrega continua a nuestros usuarios!" - Rodrigo Mantica [1]

Ahora, veamos cómo automatizar estas actualizaciones para simplificar la gestión de versiones.

Automatización de Actualizaciones de Versión

Automatizar actualizaciones de versión puede ahorrar tiempo y reducir errores en tu proyecto Capacitor. Aquí está cómo configurarlo:

  1. NPM Scripts de Versión

Agregar estos scripts a tu archivo para gestionar actualizaciones de versión de manera fácil: package.json Integración de CI/CD

{
  "scripts": {
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  }
}
  1. Incorporar actualizaciones de versión en tu pipeline de CI/CD. __CAPGO_KEEP_0__ admite herramientas como
    Capgo Acciones GitHub Actions, , yJenkins Automatizar actualizaciones de versiónautomatizar el proceso de manera sencilla.

“@Capgo es una herramienta imprescindible para los desarrolladores que buscan productividad al evitar revisiones de bug largas.” - Bessie Cooper [1]

Métodos de Etiquetas de Versión

Etiquetas de Versión Git

Las etiquetas de versión Git son una forma confiable de mantener el registro de Capacitor lanzamientos de aplicaciones. Para crear etiquetas claras e informativas, combina la numeración semántica con una breve descripción:

git tag -a v1.2.3 -m "Release v1.2.3: Added offline mode support"

Para mantener la consistencia dentro de su equipo, utilice un formato de etiquetado estándar:

Componente de EtiquetaFormatoEjemplo
Versión de Lanzamientov[MAYOR].[MINOR].[PATCH]v1.2.3
Lanzamiento Betav[VERSION]-beta.[NUMBER]v1.2.3-beta.1
Candidato a Lanzamientov[VERSION]-rc.[NUMBER]v1.2.3-rc.2

Integración de Número de Construcción

Los números de construcción ayudan a rastrear los builds individuales dentro de cada versión. Para tanto iOS como Android, incremente el número de construcción con cada envío:

{
  "ios": {
    "version": "1.2.3",
    "build": "10234"
  },
  "android": {
    "version": "1.2.3",
    "versionCode": "10234"
  }
}

El número de construcción debe aumentar siempre, incluso si la versión sigue siendo la misma. Esto garantiza que cada envío a la tienda de aplicaciones se identifique de manera única mientras se mantiene la versión clara para los usuarios.

Gestión de Versión Beta

El manejo de versiones beta requiere un proceso estructurado para distribuir compilaciones de prueba. Capgo’s sistema de canal simplifica esto con los siguientes pasos:

  1. Configuración de canal

Crear canales separados para cada fase de prueba:

{
  "beta": {
    "version": "1.3.0-beta.1",
    "users": "beta-testers"
  },
  "production": {
    "version": "1.2.3",
    "users": "all"
  }
}
  1. Control de acceso del usuario

Configura permisos para controlar quién tiene acceso a versiones beta. Esto garantiza que solo los probadores aprobados reciban compilaciones beta mientras que los usuarios de producción obtengan versiones estable.

  1. Progresión de versión

Utiliza un sistema de progresión de versión claro para seguir las etapas de desarrollo:

EtapaFormato de versiónPropósito
Alfa1.3.0-alfa.1Pruebas internas
Beta1.3.0-beta.1Grupo de pruebas externas
RC (Candidato a la versión de lanzamiento)1.3.0-rc.1Pruebas finales antes del lanzamiento
Producción1.3.0Lanzamiento público

Esta aproximación garantiza pruebas exhaustivas y transiciones suaves entre las etapas de desarrollo, manteniendo el seguimiento de versiones organizado y transparente a lo largo del proceso.

Versión de la Aplicación

Mostrar información de versión precisa en tu aplicación es clave para mantener a los usuarios informados y gestionar actualizaciones de manera efectiva.

Obtener Versión con Capacitor

Puedes recuperar detalles de versión utilizando Capacitor con este code:

import { App } from '@capacitor/app';

async function getAppInfo() {
  const info = await App.getInfo();
  console.log(`Version: ${info.version}`);
  console.log(`Build: ${info.build}`);
}

Para un enfoque más escalable, crea una función reutilizable:

export const getVersionString = async () => {
  const info = await App.getInfo();
  return `v${info.version} (${info.build})`;
};

Esta función simplifica el proceso de mostrar información de versión en la interfaz de tu aplicación.

Implementación de UI de Versión

Aquí tienes un ejemplo de cómo integrar la visualización de versión en un componente de ajustes:

@Component({
  selector: 'app-settings',
  template: `
    <div class="version-info">
      <span>Version: {{ versionString }}</span>
      <span *ngIf="updateAvailable" class="update-badge">
        Update Available
      </span>
    </div>
  `
})

Los lugares comunes para mostrar detalles de versión incluyen:

UbicaciónPropósitoImplementación
Pantalla de ConfiguraciónVersión completa y compilaciónInformación de versión detallada
Página de Acerca deMostrar versión básicaNúmero de versión solo
Pie de Página de la AplicaciónMostrar de manera mínimaCadena de versión condensada

Además de mostrar información de versión, integrar un sistema de comprobación de actualizaciones puede mejorar la experiencia del usuario.

Sistema de Comprobación de Actualizaciones

Un sistema de comprobación de actualizaciones garantiza que los usuarios tengan acceso a las últimas características y correcciones. Capgo proporciona notificaciones en tiempo real y canales de actualización controlados para gestionar este proceso:

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

async function checkForUpdates() {
  const current = await CapacitorUpdater.current();
  const latest = await CapacitorUpdater.getLatest();

  if (current.version !== latest.version) {
    await CapacitorUpdater.download({
      version: latest.version
    });
  }
}

“Practicamos el desarrollo ágil y @Capgo es crucial para entregar de manera continua a nuestros usuarios!” - Rodrigo Mantica [1]

También puedes agregar una notificación de actualización para el usuario, como este ejemplo:

@Component({
  template: `
    <update-modal 
      [version]="newVersion"
      [features]="updateFeatures"
      (updateNow)="performUpdate()"
    />
  `
})

Para aplicaciones empresariales, el sistema de canales de Capgo permite controlar la distribución de actualizaciones:

CanalesTipo de actualizaciónPúblico objetivo
ProducciónVersiones estableTodos los usuarios
BetaVersiones de pruebasGrupo de prueba
CríticoSoluciones de reparación de emergenciaUsuarios afectados

Esta metodología garantiza la confiabilidad de la aplicación mientras rastrea el rendimiento de las actualizaciones a través del panel de control de análisis de Capgo.

Soluciones de Gestión de Versiones

Vamos a profundizar en soluciones avanzadas para gestionar las versiones de la aplicación de manera efectiva.

Opciones de Herramientas de Versión

Al seleccionar herramientas de control de versiones, es importante centrarse en aquellas que simplifiquen las actualizaciones, protejan su code y apoyen tanto las liberaciones de tiendas de aplicaciones como las actualizaciones en vivo.

Aquí hay algunas características clave a buscar:

CaracterísticaImportanciaImpacto
Actualizaciones en vivoCríticoMinimiza las demoras causadas por las revisiones de la tienda de aplicaciones
SeguridadEsencialProtege los datos del usuario y la code integridad
AnáliticasImportanteMedida el éxito de las actualizaciones y la adopción de los usuarios
Integración CI/CDÚtilSimplifica los procesos de despliegue
Eficacia de CostosEstratégicoInfluye en la planificación a largo plazo del presupuesto

Una herramienta destacada en este espacio es Capgo, que ofrece características diseñadas específicamente para aplicaciones Capacitor.

Capgo Características de Control de Versión

Capgo Panel de Actualización en Vivo

Capgo ofrece capacidades de gestión de versiones robustas, incluyendo:

  • 23,5M actualizaciones exitosas entregadas
  • 95% de los usuarios actualizados en 24 horas
  • 82% de tasa de éxito global
  • 434ms average API tiempo de respuesta promedio en todo el mundo

Aquí hay un ejemplo de cómo utilizar Capgo para control de versiones:

// Capgo version control example
import { CapacitorUpdater } from '@capgo/capacitor-updater';

const versionControl = {
  async checkVersion() {
    const current = await CapacitorUpdater.current();
    return current.version;
  },

  async deployUpdate(version: string) {
    await CapacitorUpdater.setChannel({
      channel: 'production',
      version: version
    });
  }
};

“We are currently giving a try to @Capgo since Appcenter stopped live updates support on hybrid apps and @AppFlow is way too expensive.” - Simon Flack [1]

Tamaño de Equipo Soluciones

Capgo ofrece planes flexibles para acomodar a equipos de todos los tamaños, lo que hace que el control de versiones sea escalable y eficiente.

Tamaño de EquipoPlanCaracterísticas Clave
Desarrollador IndividualHosting en la nube básicoActualizaciones en vivo, 1,000 MAU
Pequeño Equipo (2-5)Plan del creador10,000 MAU, 500GB de ancho de banda
Equipo Medio (6-20)Plan del equipo100,000 MAU, permisos
EmpresaPago por uso personalizadoSin límite de MAU, soporte dedicado

Para equipos más grandes, el sistema de canales de Capgo permite un control preciso sobre la versión de despliegue:

const enterpriseVersionControl = {
  channels: {
    production: 'stable-releases',
    beta: 'early-access',
    internal: 'development'
  },

  async deployToChannel(channel: string, version: string) {
    await CapacitorUpdater.setChannel({
      channel: channel,
      version: version
    });
  }
};

“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!” - Rodrigo Mantica [1]

“Practicamos el desarrollo ágil y @Capgo es crucial en la entrega continua a nuestros usuarios!” - Rodrigo Mantica

__CAPGO_KEEP_0__ también incluye una consola de análisis para monitorear las tasas de adopción de versiones y detectar problemas potenciales temprano. Con cifrado integrado y opciones de alojamiento personalizables, los equipos pueden mantener la seguridad mientras escalan sus flujos de trabajo de despliegue.

Entender la etiquetado de versión es clave para simplificar los procesos de desarrollo y despliegue.

Resultados clave

La etiquetado de versión ayuda a los desarrolladores a mantener actualizaciones suaves y fiables. Un control de versiones adecuado ofrece ventajas claras:

BeneficioImpactoResultado
Actualizaciones instantáneasTiempos de revisión más cortosAdopción de usuarios más rápida [1]
Control de versionesMejor code gestiónMayor tasa de éxito [1]
Seguimiento de ActualizacionesMonitoreo en tiempo realResolución de problemas más rápida [1]
Control de DistribuciónDespliegues dirigidosCompatibilidad con múltiples plataformas

Estos resultados destacan la importancia de utilizar herramientas de gestión de versiones efectivas.

¿Cómo Empezar

Para poner en acción estos beneficios, siga estos pasos:

  • Configurar el seguimiento de versiones: Utilice la numeración semántica en su package.json archivo y integre los plugins necesarios.
  • Agregar comprobaciones de actualizaciones: Implementar sistemas para verificar y rastrear actualizaciones de versión.
  • Configurar canales de distribución: Crear entornos separados para producción, beta y desarrollo.

Finalmente, considere agregar un sistema de actualizaciones en vivo para garantizar que las implementaciones sean tanto rápidas como seguras.

Sigue adelante desde Etiquetas de Versión en Capacitor Apps

Si estás utilizando Etiquetas de Versión en Capacitor Apps para planificar el rollback y el control de versiones, conecta con Rollbacks para los detalles de implementación en Rollbacks, Versiones Objetivo para los detalles de implementación en Version Targeting Actualizar Comportamiento para los detalles de implementación en Actualizar Comportamiento empaquetar para los detalles de implementación en empaquetar, y Capgo Actualizaciones en Vivo para el flujo de trabajo del producto en Capgo Actualizaciones en Vivo.

Actualizaciones en vivo para aplicaciones Capacitor

Cuando haya un error en la capa web, envíe la corrección a través de Capgo en lugar de esperar días para la aprobación de la tienda. Los usuarios reciben la actualización en segundo plano mientras que los cambios nativos siguen en el camino de revisión normal.

Comienza ahora

Últimas noticias de nuestro Blog

Capgo te da las mejores pistas que necesitas para crear una aplicación móvil verdaderamente profesional.