Saltare al contenuto principale

Etichettatura della versione nei Capacitor App

Impara le basi dell'etichettatura della versione nelle 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à delle app su iOS, Android e piattaforme web. Ecco un'overview rapida:

  • Perché è importante: Traccia gli aggiornamenti, abilita i rollback e garantisce le distribuzioni stabili.
  • Semplificazione della versione: Utilizza MAJOR.MINOR.PATCH per indicare le modifiche dirompenti, le nuove funzionalità o i bug fix.
  • Sincronizzazione su Piattaforme: Allinea i numeri di versione in package.json, iOS Info.plist, e Android build.gradle.
  • Automazione: Automatizza gli aggiornamenti 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 le versioni alpha, beta e di produzione.

Confronto Rapido

CaratteristicaScopoEsempio
Versionamento SemanticoSegnala le modifiche in modo chiaro1.2.3 → 2.0.0
Sincronizza VersioniAllinea su piattaforme diversenpx cap sync
AutomazioneAccelerare le aggiornamenti delle versioninpm version patch
Aggiornamenti in tempo realeAdozione rapida degli utentiCapgo’s 95% in 24 ore
Canali BetaFasi di testing controllate1.3.0-beta.1

La gestione delle versioni semplifica aggiornamenti dell'app, mantiene gli utenti felici e garantisce che gli sviluppatori possano gestire le rilasci in modo efficace.

How to configurare automaticamente il tuo Capacitor progetto ⚡️

Documentazione del sito web del framework Capacitor

Configurazione della versione in Capacitor

Esegui questi passaggi per garantire una gestione coerente delle versioni su tutti i piattaforme nel tuo app Capacitor.

Impostazione della versione in package.json

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

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

Quando si aggiorna il numero di versione, utilizzare le regole di versioning semantico (SemVer):

  • Versione maggiore (1.x.x): Introduce modifiche di rottura.
  • Versione minore (x.2.x): Aggiunge nuove funzionalità compatibili con la retrocompatibilità.
  • 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 app di app smooth. Ogni piattaforma ha il proprio file di configurazione per la versioning:

PiattaformaFile di configurazioneChiave di versione
iOSInfo.plistCFBundleShortVersionString
Androidbuild.gradleversionName
Webpackage.jsonversion

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

npx cap sync

Utilizzando Capacitor CLI per la gestione delle versioni

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

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

Configurazione della versione semantica

Principi di versione semantica

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

Componente di versioneScopo
MAJORIntroduce modifiche di rottura al API
MINORAggiunge nuove funzionalità compatibili con le versioni precedenti
PATCHCorregge 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'applicazione. Ad esempio, passare da 1.2.3 a 2.0.0 indica aggiornamenti significativi e rovinosi che richiedono un piano di lavoro attento.

Quando Aggiornare i Numeri di Versione

Ecco come decidere quale numero di versione aggiornare:

Tipo di AggiornamentoQuando UsareEsempio di Modifica della Versione
Aggiornamento MaggiorePer cambiamenti significativi API o per ridisegnare l'interfaccia utente di grandi dimensioni1.2.3 → 2.0.0
Aggiornamento MinoreQuando si introducono nuove funzionalità o si segnalano funzionalità come obsolete1.2.3 → 1.3.0
Aggiornamento di PatchPer correzioni di bug o piccoli miglioramenti di prestazioni1.2.3 → 1.2.4

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

Ecco 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. Script di Versione NPM

Aggiungi questi script al tuo package.json file per gestire gli 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 aggiornamenti di versione nel tuo pipeline 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 di bugfix.” - Bessie Cooper [1]

Metodi di Etichetta di Versione Git

Etichette di Versione Git

Le etichette di versione Git sono un modo affidabile per tenere traccia delle Capacitor rilasci dell'app. Per creare etichette chiare e informative, combinare 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 ComponenteFormatoEsempio
Versione di rilasciov[MAJOR].[MINOR].[PATCH]v1.2.3
Rilascio betav[VERSION]-beta.[NUMBER]v1.2.3-beta.1
Candidato di rilasciov[VERSION]-rc.[NUMBER]v1.2.3-rc.2

Integrazione del Numero di Costruzione

I numeri di costruzione aiutano a tracciare i singoli costruzioni all'interno di ogni versione. Per entrambi 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 mentre mantiene la versioning chiaro per gli utenti.

Gestione della Versione Beta

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

  1. Configurazione del Canale

Creare 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 degli Utenti

Imposta 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:

FaseFormato della versioneScopo
Alpha1.3.0-alpha.1Test interni
Beta1.3.0-beta.1Gruppo di test esterno
RC (Candidato di Rilascio)1.3.0-rc.1Test finale prima del rilascio
Produzione1.3.0Rilascio pubblico

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

Visualizza Versione dell'App

Mostrare informazioni di versione accurate nell'app è fondamentale per tenere informati gli utenti e gestire gli aggiornamenti in modo efficace.

Estrai Versione con Capacitor

È possibile recuperare 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 di versione nell'interfaccia dell'app.

Implementazione UI

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 visualizzare i dettagli della versione includono:

PosizioneScopoImplementazione
Schermo delle ImpostazioniVersione completa e buildInformazioni sulla versione dettagliate
Pagina InformazioniVisualizzazione di base della versioneNumero di versione solo
Barra del FooterVisualizzazione MinimaVersione condensata

Inoltre, oltre a visualizzare le informazioni sulla versione, integrare un sistema di controllo degli aggiornamenti può migliorare l'esperienza utente.

Sistema di Controllo degli Aggiornamenti

Un sistema di controllo degli aggiornamenti assicura agli utenti l'accesso alle ultime funzionalità e correzioni. Capgo fornisce notifiche in tempo reale e canali di aggiornamento controllati per gestire questo processo:

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 visibile dall'utente, 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:

CanaleTipo di AggiornamentoAudience di Destinazione
ProduzioneRilasci stabiliTutti gli utenti
BetaVersioni di anteprimaGruppo di test
CriticoRisposte di emergenzaUtenti interessati

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

Soluzioni di Gestione delle Versioni

Scopriamo di più sulle soluzioni avanzate per la gestione delle versioni dell'applicazione in modo efficace.

Opzioni per la versione del Tool

Scegliendo gli strumenti di controllo della versione, è importante concentrarsi su quelli che semplificano gli aggiornamenti, proteggono il tuo code e supportano sia le rilasci negli store che gli aggiornamenti in tempo reale.

Ecco alcune caratteristiche chiave da cercare:

CaratteristicaImportanzaImpatto
Aggiornamenti in Tempo RealeCrucialeMinimizza i ritardi causati dalle recensioni degli store
SecurityEssenzialeGarantisce l'integrità dei dati degli utenti e la sicurezza del tuo code
AnalyticsImportanteMisura l'aggiornamento di successo e l'adozione degli utenti
Integrazione CI/CDUtileSemplifica i processi di distribuzione
Efficienza dei costiStrategicoInfluenza la pianificazione a lungo termine del budget

Un'importante risorsa in questo spazio è Capgo, che offre funzionalità specificamente progettate per Capacitor app.

Capgo Funzionalità di Controllo Versione

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 dal momento che Appcenter ha smesso di supportare gli aggiornamenti in tempo reale per le app ibride e @AppFlow è troppo costoso.” - Simon Flack [1]

Soluzioni per la Dimensione del Team

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

Dimensione del TeamPianoCaratteristiche chiave
Sviluppatore singoloHosting cloud di baseAggiornamenti in tempo reale, 1.000 MAU
Piccola squadra (2-5)Piano Maker10.000 MAU, 500 GB di banda
Media squadra (6-20)Piano di squadra100.000 MAU, autorizzazioni
EnterprisePagamento a consumo personalizzatoSostegno dedicato illimitato, MAU

Per team 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 e dei passaggi principali 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:

BeneficioImpattoEsito
Aggiornamenti istantaneiLinee di revisione più breviAdozione utente più rapida [1]
Controllo delle versioniGestione code miglioreTassi di successo più alti [1]
Tracciamento degli aggiornamentiMonitoraggio in tempo realeRisoluzione dei problemi più veloce [1]
Controllo della distribuzioneRilasci miratiSupporto 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 la 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 con la versione Tagging nei Capacitor App

If sei stai utilizzando Versione Tagging nei Capacitor Applicazioni per pianificare il rollback e il controllo delle versioni, connettilo con Rollbacks per i dettagli di implementazione in Rollbacks, Versione Targeting per i dettagli di implementazione in Versione Targeting, Comportamento Aggiornamento per i dettagli di implementazione in Comportamento Aggiornamento, pacchetto per i dettagli di implementazione in pacchetto, 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.