Saltare al contenuto principale

Etichettatura della versione nei Capacitor App

Impara gli elementi essenziali dell'etichettatura della versione nei Capacitor app, compresi i migliori metodi per gli aggiornamenti, la sincronizzazione e l'automazione.

Martin Donadieu

Martin Donadieu

Content Marketer

Etichettatura della versione nei Capacitor App

L'etichettatura della versione è essenziale per la gestione Capacitor applicazioni. Assicura aggiornamenti fluidi, traccia le modifiche e migliora la affidabilità dell'applicazione su iOS, Android e piattaforme web. Ecco un breve riassunto:

  • Perché è importante: Traccia gli aggiornamenti, abilita il rollback e assicura deployment stabili.
  • Versionamento Semantico: Utilizza MAJOR.MINOR.PATCH per indicare modifiche di rottura, nuove funzionalità o correzioni di bug.
  • Sincronizza su Piattaforme: Allinea i numeri di versione in package.json, iOS Info.plist, e Android build.gradle.
  • Automazione: Aggiorna automaticamente con npm script e strumenti CI/CD.
  • Aggiornamenti in tempo reale: Strumenti come Capgo inviano aggiornamenti a 95% degli utenti entro 24 ore.
  • Gestione Beta: Utilizza canali strutturati per versioni alpha, beta e di produzione.

Confronto rapido

Caratteristica Scopo Esempio
Semantic Versioning Segna le modifiche in modo chiaro 1.2.3 → 2.0.0
Sync Versions Allinea all'interno delle piattaforme npx cap sync
Automazione Semplifica gli aggiornamenti delle versioni npm version patch
Live Updates Adozione rapida degli utenti Capgo’s 95% in 24 ore
Canali Beta Fasi di testing controllate 1.3.0-beta.1

Etichettatura delle versioni semplifica Aggiornamenti dell'appassicura che gli utenti siano felici e garantisce ai sviluppatori di gestire le rilasci in modo efficace.

Come configurare automaticamente il tuo Capacitor progetto ⚡️

Documentazione del Framework Capacitor

Configurazione della versione in Capacitor

Segui questi passaggi per garantire una gestione della versione coerente su tutte le piattaforme nel tuo app Capacitor.

Impostazione della versione in package.json

La package.json file serve come fonte principale per i dettagli sulla versione dell'app. Ecco un esempio di come impostarla:

{
  "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"
  }
}

When aggiornando il numero di versione, utilizza le regole di versionamento semantico (SemVer):

  • Versione maggiore (1.x.x): Introduce modifiche di rottura.
  • Versione minore (x.2.x): Aggiunge nuove funzionalità compatibili con il passato.
  • Versione di patch (x.x.3): Corregge bug o apporta miglioramenti minimi.

Mantieni le versioni delle piattaforme sincronizzate

È importante allineare i numeri di versione su tutte le piattaforme per una distribuzione di app liscia. Ogni piattaforma ha il proprio file di configurazione per la versioning:

Piattaforma File di configurazione Chiave di versione
Diversi Info.plist CFBundleShortVersionString
IOS build.gradle versionName
Web package.json version

Dopo l'aggiornamento della versione in package.jsonUsa questo comando per sincronizzare le modifiche con le configurazioni native delle piattaforme:

npx cap sync

Utilizzando Capacitor CLI per la gestione della versione

Il Capacitor CLI offre comandi utili per gestire le versioni:

# 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

Tenere aggiornato il tuo Capacitor CLI garantisce la compatibilità con le funzionalità specifiche della versione e riduce i potenziali disallineamenti. Seguendo questi passaggi, potrai mantenere una versioning corretta nel tuo app.

Impostazione della versione semantica

Basi della versione semantica

Versioning semantico (SemVer) utilizza il formato MAJOR.MINOR.PATCH, dove ogni parte indica un tipo specifico di modifica:

Componente della versione Fine
MAJOR Introduce modifiche di rottura nel API
MINOR Aggiunge nuove funzionalità compatibili con le versioni precedenti
PATCH Corregge bug o migliora le prestazioni senza compromettere la compatibilità

Questo sistema garantisce che gli sviluppatori possano comunicare in modo chiaro gli aggiornamenti senza compromettere la compatibilità tra le versioni dell'app. Ad esempio, passare da 1.2.3 a 2.0.0 indica aggiornamenti maggiori, che richiedono una pianificazione attenta.

Quando Aggiornare i Numeri di Versione

Ecco come decidere quale numero di versione aggiornare:

Tipo di Aggiornamento Quando Usare Esempio di Modifica della Versione
Aggiornamento Principale Per modifiche di base API o per un completo restyling dell'interfaccia utente 1.2.3 → 2.0.0
Aggiornamento Minore Quando si introducono nuove funzionalità o si segnalano funzionalità come obsolete 1.2.3 → 1.3.0
Aggiornamento di Patch Per correzioni di bug o piccoli miglioramenti di prestazioni 1.2.3 → 1.2.4

“Pratichiamo lo sviluppo agile e @Capgo è essenziale per consegnare continuamente ai nostri utenti!” - Rodrigo Mantica [1]

Ora vediamo come automatizzare questi aggiornamenti per semplificare la gestione delle versioni.

Automazione degli Aggiornamenti di Versione

Automare gli aggiornamenti di versione può risparmiare tempo e ridurre gli errori nel tuo progetto Capacitor. Ecco come configurarlo:

  1. NPM Script delle Versioni

Aggiungi questi script al tuo package.json file per gestire le aggiornamenti di versione in modo facile:

{
  "scripts": {
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  }
}
  1. Integrazione CI/CD
    Incorpora gli aggiornamenti di versione nel tuo flusso di lavoro CI/CD. Capgo supporta strumenti come GitHub Actions, GitLab CI, e Jenkins, rendendo semplice automatizzare il processo.

“@Capgo è uno strumento imprescindibile per i developer che cercano produttività evitando lunghi revisioni dei bug.” - Bessie Cooper [1]

Metodi di Etichetta di Versione

Etichette di Versione Git

Le etichette delle versioni Git sono un modo affidabile per tenere traccia delle Capacitor rilasci dell'app. Per creare etichette chiare e informative, combina la versione semantica con una breve descrizione:

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

Per mantenere la consistenza all'interno della tua squadra, utilizza un formato di etichettatura standardizzato:

Etichetta Componente Formato Esempio
Rilascio di Versione v[MAJOR].[MINOR].[PATCH] v1.2.3
Rilascio Beta v[VERSION]-beta.[NUMBER] v1.2.3-beta.1
Candidato di Rilascio v[VERSION]-rc.[NUMBER] v1.2.3-rc.2

Integrazione del Numero di Costruzione

I numeri di costruzione aiutano a tracciare le singole costruzioni all'interno di ogni versione. Per iOS e Android, incrementare il numero di costruzione con ogni invio:

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

Il numero di costruzione dovrebbe sempre aumentare, anche se la versione rimane la stessa. Ciò assicura che ogni invio negli store sia univocamente identificato, mantenendo la versioning chiara per gli utenti.

Gestione della Versione Beta

La gestione delle versioni beta richiede un processo strutturato per distribuire le costruzioni di test. Capgo’s sistema dei canali semplifica questo con i seguenti passaggi:

  1. Impostazione del Canale

Crea canali separati per ogni fase di testing:

{
  "beta": {
    "version": "1.3.0-beta.1",
    "users": "beta-testers"
  },
  "production": {
    "version": "1.2.3",
    "users": "all"
  }
}
  1. Controllo dell'accesso utente

Configura le autorizzazioni per controllare chi ha accesso alle versioni beta. Ciò assicura che solo i tester approvati ricevano le versioni beta mentre gli utenti di produzione ricevono rilasci stabili.

  1. Progressione della versione

Utilizza un sistema di progressione della versione chiaro per tracciare le fasi di sviluppo:

Fase Formato della versione Scopo
Alpha 1.3.0-alpha.1 Testing interno
Beta 1.3.0-beta.1 Gruppo di test esterno
RC (Candidato per la rilascio) 1.3.0-rc.1 Test finale prima del rilascio
Produzione 1.3.0 Rilascio pubblico

Questa approccio garantisce test approfonditi e transizioni liscie tra le fasi di sviluppo, mantenendo la gestione delle versioni organizzata e trasparente durante tutto il processo.

Visualizza Versione dell'App

La visualizzazione di informazioni di versione accurate nel tuo app è fondamentale per tenere informati gli utenti e gestire gli aggiornamenti in modo efficace.

Ottenere Versione con Capacitor

Puoi recuperare i dettagli di versione utilizzando Capacitor con questo code:

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

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

Per un approccio più fluido, crea una funzione riutilizzabile:

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

Questa funzione semplifica il processo di visualizzazione delle informazioni sulla versione nell'interfaccia del tuo app.

Implementazione dell'interfaccia della versione

Ecco un esempio di come integrare la visualizzazione della versione in un componente di impostazioni:

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

Luoghi comuni per mostrare dettagli sulla versione includono:

Posizione Scopo Implementazione
Pantalla delle Impostazioni Versione completa e build Informazioni sulla versione dettagliate
Pagina Sull'App Visualizzazione versione base Solo numero di versione
Footer dell'app Visualizzazione minima Versione condensata

Inoltre, integrando un sistema di controllo delle aggiornamenti può migliorare l'esperienza utente.

Sistema di controllo delle aggiornamenti

An update check system ensures users have access to the latest features and fixes. Capgo provides real-time notifications and controlled update channels to manage this process:

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
    });
  }
}

“Pratichiamo lo sviluppo agile e @Capgo è essenziale per consegnare continuamente ai nostri utenti!” - Rodrigo Mantica [1]

Puoi anche aggiungere una notifica di aggiornamento utente faccia a faccia, come questo:

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

Per le app aziendali, il sistema di canali di Capgo consente di controllare la distribuzione degli aggiornamenti:

Canale Tipo di Aggiornamento Pubblico
Produzione Aggiornamenti stabili Tutti gli utenti
Beta Versioni di anteprima Gruppo di test
Critico Rimedi d'urgenza Utenti interessati

Questa metodologia garantisce la affidabilità dell'applicazione mentre traccia le prestazioni degli aggiornamenti attraverso il dashboard di analytics di Capgo.

Soluzioni di Gestione delle Versioni

Scendiamo a fondo nelle soluzioni avanzate per la gestione delle versioni degli app efficaci.

Opzioni per lo Strumento di Gestione delle Versioni

Quando si selezionano gli strumenti di controllo delle versioni, è importante concentrarsi su quelli che semplificano gli aggiornamenti, proteggono il tuo code, e supportano sia le rilasci negli store degli app che gli aggiornamenti in tempo reale.

Ecco alcune caratteristiche chiave da cercare:

Caratteristica Importanza Impatto
Aggiornamenti in Tempo Reale Critico Minimizza i ritardi causati dalle recensioni degli store degli app
Sicurezza Essenziale Garantisce l'integrità dei dati dell'utente e code
Analisi Importante Misura il successo degli aggiornamenti e l'adozione dell'utente
Integrazione CI/CD Utile Semplifica i processi di distribuzione
Efficienza dei costi Strategico Influenza la pianificazione a lungo termine del budget

Uno strumento di spicco in questo settore è Capgo, che offre funzionalità specificamente progettate per Capacitor applicazioni.

Capgo Caratteristiche di Controllo delle Versioni

Capgo Dashboard di Aggiornamento in Tempo Reale

Capgo fornisce capacità di gestione delle versioni robuste, tra cui:

  • 23,5 milioni di aggiornamenti riusciti consegnati
  • 95% degli utenti aggiornati entro 24 ore
  • 82% di successo globale
  • 434 ms di tempo medio di risposta di API in tutto il mondo

Ecco un esempio di come utilizzare Capgo per il controllo delle versioni:

// 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
    });
  }
};

“Stiamo dando un'occhiata a Capgo attualmente poiché Appcenter ha smesso di supportare gli aggiornamenti in tempo reale per le applicazioni ibride e @AppFlow è troppo costoso.” - Simon Flack [1]

Soluzioni per la Dimensione del Team

Capgo offre piani flessibili per accogliere team di tutte le dimensioni, rendendo la gestione delle versioni scalabile ed efficiente.

Dimensione del Team Piano Caratteristiche principali
Sviluppatore Solo Hosting cloud base Aggiornamenti in tempo reale, 1.000 MAU
Piccolo Team (2-5) Piano Maker 10.000 MAU, 500GB di banda
Grande Team (6-20) Piano Team 100.000 MAU, autorizzazioni
Azienda Pagamento a consumo personalizzato MAU illimitati, supporto dedicato

Per le squadre più grandi, il sistema dei canali di Capgo consente un controllo preciso sulla distribuzione delle versioni:

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

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

'Pratichiamo lo sviluppo agile e @Capgo è essenziale per consegnare continuamente ai nostri utenti!' - Rodrigo Mantica [1]

Capgo include anche un dashboard di analisi per monitorare le adozioni delle versioni e rilevare potenziali problemi in anticipo. Con crittografia integrata e opzioni di hosting personalizzabili, le squadre possono mantenere la sicurezza mentre scalano i loro flussi di distribuzione.

Conclusioni

Capire la gestione delle versioni è fondamentale per semplificare i processi di sviluppo e distribuzione. Ecco un rapido riassunto delle idee principali e dei passaggi per iniziare.

Punti chiave

La gestione delle versioni aiuta gli sviluppatori a mantenere aggiornamenti lisci e affidabili. Un controllo delle versioni appropriato offre vantaggi chiari:

Beneficio Risultati Esito
Aggiornamenti istantanei Tempi di revisione più brevi Adozione degli utenti più veloce [1]
Gestione dei controlli di versione Gestione dei code più efficace Tassi di successo più alti [1]
Tracciamento degli aggiornamenti Monitoraggio in tempo reale Risoluzione dei problemi più veloce [1]
Controllo della distribuzione Eseguimenti mirati Sostegno multi-piattaforma

Ecco i risultati che evidenziano l'importanza dell'utilizzo di strumenti di gestione delle versioni efficaci.

Come iniziare

Per mettere in pratica questi benefici, segui questi passaggi:

  • Configura la tracciatura delle versioni: Utilizza la versioning semantica nel tuo package.json file e integra i plugin necessari.
  • Aggiungi controlli di aggiornamento: Implementa sistemi per verificare e tracciare gli aggiornamenti delle versioni.
  • Configura i canali di distribuzione: Crea ambienti separati per produzione, beta e sviluppo.

Infine, considera l'aggiunta di un sistema di aggiornamento in tempo reale per garantire che le distribuzioni siano sia veloci che sicure.

Continua da qui da Version Tagging in Capacitor Applicazioni

Se stai utilizzando Version Tagging in Capacitor Applicazioni per pianificare il rollback e il controllo delle versioni, connettilo con Rollbacks per i dettagli di implementazione in Rollbacks, Version Targeting per i dettagli di implementazione in Version Targeting, Update Behavior per i dettagli di implementazione in Update Behavior, bundle For l'implementazione dettagliata nel bundle, e Capgo Aggiornamenti in tempo reale For il flusso di lavoro del prodotto in Capgo Aggiornamenti in tempo reale.

Aggiornamenti in tempo reale per le Capacitor app

Quando un bug nel layer web è attivo, invia la correzione attraverso Capgo invece di attendere giorni per l'approvazione della store. Gli utenti ricevono l'aggiornamento in background mentre le modifiche native rimangono nel normale percorso di revisione.

Inizia subito

Ultimi articoli dal nostro Blog

Capgo ti offre le migliori informazioni che ti servono per creare un'app mobile davvero professionale.