Vuoi semplificare gli aggiornamenti dell'app delle tue app e controllo delle versioni? La versione semantica (SemVer) combinata con Capgogli aggiornamenti Over-The-Air (OTA) di Capacitor fanno sì che gestire le app sia più facile e veloce. Ecco come funziona:
-
Basi della versione semantica: Le versioni utilizzano il formato
MAJOR.MINOR.PATCH:- MAJOR: Per modifiche di rottura.
- MINOR: Per nuove funzionalità compatibili con le versioni precedenti.
- PATCH: Per correzioni di bug.
-
Perché utilizzare SemVer con Capgo?
- Comunicazione chiara sulle aggiornamenti.
- Gestione delle versioni più intelligente.
- Evitare conflitti di dipendenza.
- Pianificazione delle rilasci organizzata.
-
Capgo Setup Passaggi:
- Installa il plugin di aggiornamento di Capgo.
- Configura la versione del tuo app in
capacitor.config.jsone altri file. - Inizializza con la tua chiave API.
- Usa Capgo CLI per creare e caricare aggiornamenti.
-
- Usa canali separati (ad esempio, “beta” per le prove, “produzione” per le rilasci stabili).
- Controlla le politiche di aggiornamento (aggiornamenti automatici per le patch, approvazione manuale per le modifiche principali).
- Opzioni di rollback per gli aggiornamenti falliti.
-
Procedura di Deploy:
- Aggiorna i numeri di versione seguendo le regole di SemVer.
- Testa accuratamente prima di deployare.
- Usa i comandi CLI per caricare e distribuire gli aggiornamenti.
Capgo garantisce che gli aggiornamenti raggiungano gli utenti velocemente e in modo affidabile, con strumenti per gestire le interruzioni e mantenere la stabilità. Perfetto per le squadre che utilizzano flussi di lavoro CI/CD per automatizzare gli aggiornamenti.
Ragioneria veloce: Verifica sempre gli aggiornamenti e utilizza i canali per gestire i rilasci in fase di staging in modo efficace.
Versionamento Semantico | Livello Su
Capgo Guida di configurazione

Ecco come configurare Capgo per la gestione degli aggiornamenti OTA e del controllo delle versioni con facilità.
Passaggi di configurazione iniziali
Inizia installando il Capgo plugin di aggiornamento:
npm install @capgo/capacitor-updater
npx cap sync
Assicurati che il tuo capacitor.config.json file utilizza un formato di versione semantico:
{
"appId": "com.example.app",
"appName": "My App",
"version": "1.0.0"
}
Per i progetti più vecchi, aggiorna i dettagli della versione in questi luoghi:
package.json(cerca il campo)version(aggiornaandroid/app/build.gradle(aggiornaversionName)ios/App/App.xcodeproj/project.pbxprojUna volta configurato, inizializza __CAPGO_KEEP_0__ con la tua chiave __CAPGO_KEEP_1__:CURRENT_PROJECT_VERSION)
Once configured, initialize Capgo with your API key:
npx @capgo/cli@latest init YOUR_API_KEY
Fase di configurazione
| Azione della chiave | Passo di verifica | Fase di configurazione |
|---|---|---|
| Installazione | Installa plugin e sincronizza | Verifica package.json |
| Configurazione | Imposta numeri di versione | Verifica in tutti i file |
| Inizializzazione | Connetti con la chiave API | Verifica stato di connessione |
| Costruisci | Crea bundle iniziale | Conferma successo dell'upload |
Gestione Versione Integrata
Capgo funziona bene con le piattaforme CI/CD, rendendo aggiornamenti automatici semplici. Le piattaforme supportate includono:
Se si lavora sullo sviluppo locale, si può disabilitare gli aggiornamenti automatici aggiungendo questo alla configurazione:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}
Ciò assicura che Capgo non sovrascriva le modifiche locali. Una volta pronto il setup, caricare la prima versione:
npx @capgo/cli@latest bundle upload
npx @capgo/cli@latest channel set production -s default
Infine, notifica il plugin nativo sulla salute del pacchetto nel file principale dell'app:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
CapacitorUpdater.notifyAppReady();
Questa configurazione assicura che il tuo app sia pronta per le deployment OTA lisci e la gestione delle versioni.
Utilizzo della versione semantica con Capgo
Gestione del numero di versione
Capgo utilizza la versione semantica (SemVer) per gestire le versioni dell'app, formattate come MAJOR.MINOR.PATCHEcco come funziona:
- Versione maggiore (X.0.0): Incrementa il numero MAJOR per le modifiche che rompono la compatibilità.
- Versione minore (1.X.0): Incrementa il numero MINOR per le nuove funzionalità che rimangono compatibili.
- Versione di patch (1.0.X): Incrementa il numero PATCH per le correzioni di bug che non influiscono sulla compatibilità.
| Tipo di Versione | Quando incrementare | Comportamento di Aggiornamento Automatico |
|---|---|---|
| Maggiore (X.0.0) | Per modifiche di rottura API | Richiede approvazione manuale |
| Minore (1.X.0) | Per nuove funzionalità | Configurabile in Capgo |
| Patch (1.0.X) | Per correzioni di bug | Di solito automatico |
Seguendo le regole di SemVer, puoi semplificare la gestione delle versioni e assicurare aggiornamenti più fluidi attraverso i tuoi canali di distribuzione.
Linee guida per il controllo delle versioni
Capgo ti consente di gestire le distribuzioni in modo efficace configurando canali distinti per diverse fasi del tuo workflow.
-
Gestione delle versioni basata sui canali: Organizza il tuo processo di distribuzione creando canali separati per il testing e la produzione. Ad esempio:
- Utilizza un canale “beta” (ad esempio, 1.2.0-beta) per testare nuove funzionalità.
- Conserva un canale “produzione” (ad esempio, 1.2.0) per rilasci stabili.
- Aggiungi canali specifici per piattaforma (ad esempio, “ios-hotfix” con versione 1.2.1) quando si affrontano problemi specifici della piattaforma.
-
Configurazione della politica di aggiornamento: Controlla come vengono applicate le aggiornamenti utilizzando le opzioni di configurazione di Capgo . Ad esempio:
{ "plugins": { "CapacitorUpdater": { "disableAutoUpdate": "minor" } } }Questa configurazione garantisce che gli utenti ricevano automaticamente gli aggiornamenti di patch, mentre gli aggiornamenti minori e maggiori richiedono l'approvazione manuale.
-
Strategia di rollback delle versioni: Utilizza identificatori di versione pre-release per mantenere opzioni di rollback chiare. Questo approccio consente di tornare a una versione precedente se si verificano problemi, mantenendo la versioning coerente su tutti i canali.
Queste migliori pratiche rendono più facile gestire gli aggiornamenti, testare nuove funzionalità e mantenere la stabilità nel processo di distribuzione dell'applicazione.
sbb-itb-f9944d2
Distribuzione di Aggiornamenti OTA
Una volta pronto il tuo setup di gestione delle versioni, segui questi passaggi per distribuire gli aggiornamenti OTA in modo efficace.
Preparazione dell'Aggiornamento
Inizia aggiornando la versione in package.json e capacitor.config.json. Assicurati che la versione segua il formato SemVer (MAJOR.MINOR.PATCH):
- Correzione di Bug: Incrementa il numero di PATCH (ad esempio, 1.0.1 → 1.0.2)
- Nuova Funzione: Incrementa il numero di MINOR (ad esempio, 1.0.0 → 1.1.0)
- Modifica Rottura: Incrementa il numero di MAJOR (ad esempio, 1.0.0 → 2.0.0)
Verifica approfonditamente la tua build e conferma che l'app comunichi con il server utilizzando notifyAppReady.
Successivamente, decidi la tua strategia di aggiornamento. Puoi scegliere da:
- Aggiornamento Automatico: Imposta automaticamente le richieste di versione minima.
- Controllo Manuale: Specifica le versioni precise richieste per le aggiornamenti.
- Canali di distribuzione: Utilizza i canali per testare e distribuire gli aggiornamenti in fase di staging.
Capgo CLI Comandi di Aggiornamento
Utilizza Capgo’s CLI per distribuire i tuoi aggiornamenti con facilità. Ecco come fare:
# Initialize Capgo in your project
npx @capgo/cli@latest init [apikey]
# Upload your update bundle
npx @capgo/cli bundle upload [appId]
# Add a new distribution channel
npx @capgo/cli channel add [channelId] [appId]
Capgo garantisce una distribuzione sicura con crittografia end-to-end e gestione delle chiavi sicura.
“@Capgo is a smart way to make hot code pushes (and not for all the money in the world like with @AppFlow) 🙂”
Dopo la distribuzione, puoi monitorare gli aggiornamenti attraverso il pannello di controllo di Capgo. Gli aggiornamenti raggiungono i utenti in pochi minuti dopo che essi aprono l'app. Il processo funziona in questo modo:
- L'app verifica gli aggiornamenti.
- Scarica l'aggiornamento in background.
- Segna la nuova versione come attiva quando l'utente esce dall'app.
- Applica l'aggiornamento alla prossima avviamento.
Per le distribuzioni a livello aziendale, potresti voler integrare l'automazione del CI/CD.
“Pratichiamo lo sviluppo agile e @Capgo è essenziale per consegnare continuamente ai nostri utenti!”
Risoluzione dei Problemi e Consigli
Problemi di Gestione della Versione
La gestione della versione semantica in Capgo può talvolta complicare le distribuzioni di aggiornamento. Per evitare di sovrascrivere il tuo lavoro di sviluppo, configura i seguenti nel tuo capacitor.config.json file:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}
Se un aggiornamento fallisce, ecco cosa puoi fare:
- Imposta
autoUpdateafalsedurante lo sviluppo. - Disinstalla l'applicazione.
- Riinstallala con la versione corretta.
- Riabilita le aggiornamenti automatici non appena tutto sarà stabile.
Per aggiornamenti di versione maggiore, utilizza il disableAutoUpdateBreaking flag e ascolta l' majorAvailable evento per gestire gli aggiornamenti in modo corretto:
CapacitorUpdater.addListener('majorAvailable', (info) => {
console.log(`Major update available: ${info.version}`);
// Add your update prompt logic here
});
Combiniando queste configurazioni con buone pratiche di squadra, puoi mantenere la consistenza della versione e ridurre gli errori.
Controllo di Versione della Squadra
Una volta gestiti gli aggiornamenti individuali, è cruciale per le squadre stabilire forti pratiche di controllo di versione.
“Testare ogni modifica prima di unirla al repository principale eviterà di rafforzare la stabilità e di evitare costosi errori” [4]
Ecco alcuni metodi per garantire la consistenza:
- Definisci una branca come il repository principale per agire come fonte di verità.
- Utilizza canali separati per Capgo ambienti di sviluppo e produzione.
- Automatizza l'upload delle versioni tramite pipeline CI/CD.
- Documenta tutte le code modifiche con messaggi di commit chiari e dettagliati.
Per team più grandi, la seguente matrice di gestione delle versioni può aiutare a organizzare gli aggiornamenti:
| Ambiente | Canale | Aggiornamento automatico | Modello di versione |
|---|---|---|---|
| Sviluppo | dev | Disabilitato | 0.x.x |
| Stagione di test | beta | Abilitato | __CAPGO_KEEP_0__-beta |
| Produzione | stabile | Abilitato | __CAPGO_KEEP_0__ |
Passaggi di recupero dell'aggiornamento
Anche con le precauzioni, gli aggiornamenti possono fallire. Se succede, segui questi passaggi di recupero:
- Ritorna a un bundle stabile precedente.
- Incrementa i numeri di versione per qualsiasi nuovo fix (nota: i numeri di versione non possono essere riutilizzati dopo la cancellazione). [2].
- Verifica gli aggiornamenti durante l'avvio dell'applicazione per assicurarti che funzionino correttamente.
L'aggiornatore di Capgo è progettato per gestire le interruzioni. Ad esempio, se il server non è raggiungibile o un aggiornamento è stato cancellato, l'app continua a funzionare normalmente. [3]Aggiornamenti di rete falliti vengono automaticamente riprovati durante il prossimo avvio dell'applicazione. [3]Questa resilienza integrata riduce il downtime e garantisce operazioni più fluide.
Riepilogo
La combinazione di Capacitor e Semantic Versioning ha reso gli aggiornamenti OTA per le app Capgo più efficienti. Con 947,6 milioni di aggiornamenti consegnati e 1.400 app in produzione che utilizzano questo sistema [1]i processi di distribuzione sono diventati il 81% più efficienti. [1]Questa configurazione consente ai developer di inviare aggiornamenti velocemente e in modo controllato, bypassando i ritardi degli store di app.
Ecco cosa dicono i developer:
“Abbiamo distribuito gli aggiornamenti OTA di Capgo in produzione per la nostra base utenti di +5000. Stiamo vedendo un'operazione molto fluida quasi tutti i nostri utenti sono aggiornati in pochi minuti dopo che l'aggiornamento OTA è stato distribuito su @Capgo.” - colenso [1]
The sistema di versioning MAJOR.MINOR.PATCH rende facile la comunicazione dei cambiamenti di versione, delle nuove funzionalità e dei bug fix [5]Questo è particolarmente utile per le squadre che gestiscono più rilasci a settimana attraverso la piattaforma di Capgo
La soluzione Capgo è una soluzione crittografataintegrata con gli strumenti CI/CD, è anche economica - riducendo i costi fino a $26,100 in cinque anni [1]Le sue canali personalizzabili assicurano che gli aggiornamenti raggiungano gli utenti giusti al momento giusto
'Pratichiamo lo sviluppo agile e @Capgo è essenziale per consegnare continuamente ai nostri utenti!' - Rodrigo Mantica [1]