Saltare al contenuto principale

Versione Tagging nei Capacitor Applicazioni

Impara le basi delle etichette di versione in applicazioni Capacitor, compresi i migliori metodi per gli aggiornamenti, la sincronizzazione e l'automazione.

Martino Donadieu

Martino Donadieu

Marketing del contenuto

Etichettatura della Versione nei Capacitor Applicazioni

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

  • Perché è importanteSegnala aggiornamenti, abilita il ripristino e assicura deployment stabili.
  • Versioning SemanticoUsa MAJOR.MINOR.PATCH per indicare modifiche significative, nuove funzionalità o correzioni di bug.
  • Sincronizza Across Piattaforme: Allinea i numeri di versione in package.json, iOS Info.plist, e Android build.gradle.
  • Automazione: Automatizza gli aggiornamenti con script npm e strumenti CI/CD.
  • Aggiornamenti in Tempo Reale: Strumenti come Capgo inviare aggiornamenti a 95% degli utenti entro 24 ore.
  • Gestione Beta: Utilizzare canali strutturati per le versioni alpha, beta e di produzione.

Confronto Rapido

CaratteristicaScopoEsempio
Versionamento SemanticoSegna le modifiche in modo chiaro1.2.3 → 2.0.0
Sincronizza le versioniAllinearsi su più piattaformenpx cap sync
AutomazioneAccelerano le aggiornamenti di versionenpm 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 Aggiorna l'app, mantiene gli utenti felici e garantisce ai sviluppatori di gestire le rilasci in modo efficace.Come configurare automaticamente il tuo

__CAPGO_KEEP_0__ Capacitor Canaletta beta

Capacitor Framework Documentation Website

Version Setup in Capacitor

Follow these steps to ensure consistent version management across all platforms in your Capacitor app.

Impostazione della versione in package.json

Il package.json Il file funge da 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, utilizza le regole di versionamento semantico (SemVer):

  • Versione maggiore (1.x.x): Introduce cambiamenti di rottura.
  • Versione minore (x.2.x): Aggiunge nuove funzionalità compatibili con il passaggio all'indietro.
  • Versione di patch (x.x.3): Risolve bug o apporta miglioramenti minimi.

Mantienere le versioni delle piattaforme sincronizzate

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

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

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

npx cap sync

Utilizzando Capacitor CLI per la Gestione delle Versioni

La 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 aggiornata la 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.

Impostazione della Versione Semantica

Basi della Versione Semantica

La versione semantica (SemVer) utilizza il formato MAJOR.MINOR.PATCHdove ogni parte indica un tipo di modifica specifico:

Componente di VersioneFine
MAJORIntroduce modifiche di rottura al API
MINORAggiunge nuove funzionalità compatibili con le versioni precedenti
PATCHCorregge bug o migliora le prestazioni senza rompere la compatibilità

Questo sistema garantisce ai developer di comunicare aggiornamenti in modo chiaro, mentre preserva la compatibilità tra le versioni dell'applicazione. Ad esempio, passando da 1.2.3 a 2.0.0 Aggiornamenti principali, aggiornamenti di versione che richiedono una pianificazione attenta.

Quando Aggiornare i Numeri di Versione

Ecco come decidere quale numero di versione aggiornare:

Tipo di AggiornamentoQuando UsareEsempio di Modifica di Versione
Aggiornamento PrincipaleFor breaking API changes or major UI redesigns1.2.3 → 2.0.0
Aggiornamento MinoreQuando introdurre nuove funzionalità o segnalare 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 è fondamentale per consegnare continuamente ai nostri utenti!” - Rodrigo Mantica [1]

Ecco, ora vediamo come automatizzare queste aggiornamenti per semplificare la gestione delle release.

Automazione Aggiornamento Versione

Automazione degli aggiornamenti delle versioni L'automazione degli aggiornamenti delle versioni può risparmiare tempo e ridurre gli errori nel tuo progetto Capacitor. Ecco come configurarla:

  1. NPM Script della Versione

Aggiungi questi script al tuo file per gestire gli aggiornamenti delle versioni in modo facile: package.json Integrazione CI/CD

{
  "scripts": {
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  }
}
  1. Incorpora gli aggiornamenti delle versioni nel tuo pipeline CI/CD. __CAPGO_KEEP_0__ supporta strumenti come
    Capgo Actions GitHub Actions, Incorpora gli aggiornamenti delle versioni nel tuo pipeline CI/CD. __CAPGO_KEEP_0__ supporta strumenti come, e Jenkins, rendendo semplice l'automazione del processo.

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

Metodi di Etichettatura della Versione

Etichette di Versione Git

Le etichette di versione Git sono un modo affidabile per tenere traccia dei 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:

Componente di EtichettaFormatoEsempio
Versione di rilasciov[MAJOR].[MINOR].[PATCH]v1.2.3
Rilascio Betav[VERSIONE]-beta.[NUMERO]v1.2.3-beta.1
Candidato per il rilasciov[VERSIONE]-rc.[NUMERO]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 iOS e Android, incrementa il numero di costruzione con ogni invio:

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

Il numero di build dovrebbe aumentare sempre, anche se la versione rimane la stessa. Ciò assicura che ogni invio per le app store sia identificato in modo unico, mantenendo la versioning chiaro per gli utenti.

Gestione della versione Beta

La gestione delle versioni beta richiede un processo strutturato per distribuire i build 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 degli utenti

Imposta le autorizzazioni per controllare chi ha accesso alle versioni beta. Ciò assicura che solo i tester autorizzati ricevano i build 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
Alfa1.3.0-alfa.1Test interni
Beta1.3.0-beta.1Gruppo di test esterno
RC (Candidato per la rilascio)1.3.0-rc.1Ultimo test prima del rilascio
Produzione1.3.0Rilascio pubblico

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

Visualizzazione Versione App

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

Recupero 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 di versione nell'interfaccia del tuo'app.

Implementazione UI 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>
  `
})

I luoghi comuni per mostrare i dettagli di versione includono:

PosizioneScopoImplementazione
Schermo di configurazioneVersione completa e buildInformazioni sulla versione dettagliate
Pagina InformazioniVisualizzazione versione baseSolo numero di versione
Footer dell'appVisualizzazione minimaStringa di versione condensata

Inoltre, integrare un sistema di controllo delle 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 è fondamentale per consegnare continuamente ai nostri utenti!” - Rodrigo Mantica [1]

Puoi anche aggiungere una notifica di aggiornamento per l'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 AggiornamentoPubblico di destinazione
ProduzioneRilasci stabiliTutti gli utenti
BetaVersioni di anteprimaGruppo di test
CriticoRisoluzione di emergenzaUtenti interessati

Questo metodo assicura la affidabilità dell'applicazione mentre traccia le prestazioni degli aggiornamenti attraverso il dashboard di analisi di Capgo.

Solutions per la gestione delle versioni

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

Opzioni per gli strumenti 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 per le store che gli aggiornamenti in tempo reale.

Ecco alcune caratteristiche chiave da cercare:

CaratteristicaPrioritàInfluenza
Aggiornamenti in tempo realeCriticoRiduce i ritardi causati dalle recensioni delle app store
SicurezzaEssenzialeGarantisce l'integrità dei dati degli utenti e la code
AnalisiImportanteMisura il successo degli aggiornamenti e l'adozione degli utenti
Integrazione CI/CDUtileSemplifica i processi di distribuzione
Efficienza dei costiStrategicoInfluenza la pianificazione a lungo termine del budget

Un'ottima soluzione in questo settore è Capgo, che offre funzionalità specifiche progettate per le Capgo Capacitor.

Capgo Funzionalità di controllo versione

Capgo Dashboard di aggiornamento in tempo reale

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

  • 23,5 milioni di aggiornamenti riusciti inviati
  • 95% degli utenti aggiornati entro 24 ore
  • 82% di successo globale
  • 434ms di tempo medio di risposta 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
    });
  }
};

“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]

Stiamo provando attualmente @__CAPGO_KEEP_0__ dal momento che Appcenter ha smesso di supportare gli aggiornamenti live per le app ibride e @AppFlow è troppo costoso.

Capgo offers flexible plans to accommodate teams of all sizes, making version management scalable and efficient.

Soluzioni per la dimensione del team__CAPGO_KEEP_0__ offre piani flessibili per adattarsi a team di tutte le dimensioni, rendendo la gestione delle versioni scalabile ed efficienteDimensione del team
PianoCaratteristiche principaliAggiornamenti in tempo reale, 1.000 utenti attivi mensili
Piccola squadra (2-5)Piano Maker10.000 utenti attivi mensili, 500 GB di banda
Squadra media (6-20)Piano di squadra100.000 utenti attivi mensili, autorizzazioni
AziendaPagamento a consumo personalizzatoSenza limiti di utenti attivi mensili, 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 è fondamentale per consegnare continuamente ai nostri utenti!” - Rodrigo Mantica [1]

Capgo include anche un dashboard di analisi per monitorare le tassi di adozione 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

La comprensione del versionamento è fondamentale per semplificare i processi di sviluppo e distribuzione. Ecco un rapido riassunto delle idee principali e dei passaggi per iniziare.

Punti chiave

Il versionamento aiuta gli sviluppatori a mantenere aggiornamenti fluidi e affidabili. Un controllo delle versioni appropriato offre vantaggi chiari:

BeneficioImpattoEsito
Aggiornamenti istantaneiCicli di revisione più breviAdozione da parte degli utenti più veloce [1]
Controllo delle versioniGestione code più efficienteTassi di successo più alti [1]
Tracciamento degli aggiornamentiMonitoraggio in tempo realeRisoluzione dei problemi più veloce [1]
Controllo della distribuzioneEseguimenti miratiSupporto multi-piattaforma

Questi risultati evidenziano l'importanza dell'utilizzo di strumenti di gestione delle versioni efficaci.

Come iniziare

Per mettere in pratica questi benefici, segui questi passaggi:

  • Configura il tracciamento delle versioni: Utilizza la versione 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.

Aggiornamenti in tempo reale per le app Capacitor

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

Inizia ora

Ultimi articoli dal nostro Blog

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