Cos'è Capacitor-updater?
Capacitor-updater, una tecnologia che permette di distribuire aggiornamenti e miglioramenti alle app per gli utenti finali in modo istantaneo.
È ideale per rilasciare bug fix critici all'istante, senza dover attendere le revisioni dell'App Store.
Puoi considerarlo come l'agilità tipica del web: carichi gli aggiornamenti non appena sono disponibili tramite side-loading.
Inoltre, esegue il rollback se il nuovo aggiornamento manda in crash l'app
Come funziona?
Capgo mantiene il bundle JavaScript della tua app sincronizzato con il server Capgo e, ogni volta che l'utente apre l'app, controlla con il server Capgo se è disponibile un nuovo aggiornamento del bundle. E, naturalmente, include tantissime configurazioni che ti aiutano a mettere a punto l'esperienza dei tuoi utenti.
Uso Capgo in tutti i progetti che sviluppo. Così posso dedicare meno tempo al processo di revisione dell'App Store.
Puoi leggere di più qui.
Capire il Semantic Versioning con Capgo
Capgo usa il semantic versioning (semver) per determinare quando e come applicare gli aggiornamenti alla tua app. Così gli utenti ricevono solo update compatibili e le breaking changes non vengono mai deployate automaticamente.
Il semantic versioning segue questo formato MAJOR.MINOR.PATCH:
- MAJOR: breaking changes che richiedono una nuova release sugli store nativi
- MINOR: Nuove funzionalità retrocompatibili
- PATCH: Bug fix con retrocompatibilità
Ad esempio, se la tua app è alla versione 1.0.0 e vuoi aggiornare alla 1.0.1 (una patch), Capgo applicherà automaticamente questo aggiornamento. Se invece vuoi aggiornare da 1.0.0 a 2.0.0 (una major version), servirà un rilascio nativo sugli store, perché indica breaking changes.
Le impostazioni dei canali di Capgo ti permettono di configurare quali tipi di update applicare automaticamente:
- Strategia Major: Consente tutti gli update (usa con cautela)
- Strategia Minor: Consente solo aggiornamenti minor e patch
- Strategia patch: Consente solo aggiornamenti patch
- Strategia metadati: Richiede il rispetto dei requisiti minimi di versione
Puoi testare come funzionano diverse combinazioni di versioni con la logica di aggiornamento di Capgo usando il nostro Semver Tester. Questo tool ti aiuta a capire esattamente quando verranno applicati gli aggiornamenti in base alla configurazione del tuo channel.
Ci sono delle limitazioni?
Per quanto possa sembrare allettante, ci sono alcune cose da tenere a mente. La prima è che gli aggiornamenti OTA funzionano solo con i web bundle. Potresti pensare che non sia un grosso limite perché, in Capacitor JS, scriviamo quasi tutto il code in JS, CSS e HTML. Anche se è vero, ci sono comunque dei moduli nativi che installiamo nella nostra app. Se un modulo modifica le tue directory Android o iOS, non puoi usare l'OTA per aggiornare l'app. Questo perché il contenuto di queste directory serve a compilare i binari nativi, che l'OTA non può aggiornare. Nemmeno un'app nativa può aggiornare questa parte.
Ma puoi configurare la tua CI/CD per gestire questa parte, ho fatto un tutorial su come farlo qui per iOS.
Configurazione automatica di Capgo
È il momento di registrarti e ottenere la tua chiave API per caricare la tua prima versione! Inizia registrandoti a un account Capgo.
Una volta fatto l'accesso a Capgo, vedrai una pagina di onboarding

Segui i passaggi nella pagina di onboarding per aggiungere la tua prima app.
Segui la guida CLI
Dalla riga di comando, direttamente nella root della tua app Capacitor, esegui:
npx @capgo/cli@latest init
Per installare Capgo nella tua app Capacitor, CLI ti guiderà passo dopo passo nella configurazione con Capgo.
Se preferisci farlo manualmente, puoi seguire i passaggi qui sotto.
Configurazione manuale di Capgo
Installa il plugin
Alla fine dovresti avere questo code aggiunto alla tua app:
npm i @capgo/capacitor-updater && npx cap sync
Per installare il plugin nella tua app Capacitor.
Poi aggiungi alla tua app questo code per comunicare al plugin nativo che il bundle JS è integro (se non lo fai, il plugin nativo farà il rollback alla versione precedente):
import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()
Questo comunicherà al plugin nativo che l'installazione è riuscita.
Poi esegui un npm run build && npx cap copy per aggiornare la tua app.
Accedi a Capgo CLOUD
Per prima cosa, usa l' all apikey presente nel tuo account per accedere con CLI:
npx @capgo/cli@latest login YOU_KEY
Aggiungi la tua prima app
Let’s get started by first creating an app in Capgo Cloud with the CLI.
npx @capgo/cli@latest app add
Questo comando userà tutte le variabili definite nel file di config di Capacitor per creare l'app.
Carica la tua prima versione
Esegui il comando per buildare la tua code e inviala a Capgo con:
npx @capgo/cli@latest bundle upload
Di default, il nome della versione sarà quello presente nel tuo package.json file.
Controlla Capgo se la build è presente.
Puoi anche testarla con la mia app sandbox mobile.
Imposta il canale come default
Dopo aver inviato la tua app a Capgo, devi creare il tuo channel default per permettere alle app di ricevere gli update da Capgo.
npx @capgo/cli@latest channel set production -s default
Ricevi un Live Update su un device
Per ricevere un live update da Deploy, devi avviare l'app su un dispositivo o un emulatore. Il modo più semplice è usare questo comando per lanciare la tua app locale su un emulatore o su un dispositivo collegato al computer.
npx cap run [ios | android]
Apri l'app, mettila in background e riaprila: nei log dovresti vedere che l'app ha eseguito l'update.
Complimenti! 🎉 Hai deployato con successo il tuo primo Live Update. Questo è solo l'inizio di quello che puoi fare con Live Updates. Per saperne di più, consulta la documentazione di Live Updates.
Se devi smettere di ricevere l'update in locale, esegui questo comando
npx @capgo/cli@latest channel set
Continua con Aggiorna le tue app Capacitor senza interruzioni usando Capacitor-updater
Se stai usando Aggiorna le tue app Capacitor senza interruzioni con Capacitor-updater per pianificare la migrazione e le operazioni enterprise, collegalo a Capgo Enterprise per il workflow del prodotto in Capgo Enterprise, Alternative ai plugin Ionic Enterprise per il workflow del prodotto nelle alternative ai plugin Ionic Enterprise, Alternative a Capgo per il workflow del prodotto in Capgo Alternatives, Consulenza Capgo per il workflow di prodotto in Capgo Consulting, e Supporto Premium Capgo per il workflow di prodotto in Capgo Premium Support.