Saltare al contenuto

Rollback

Mentre le aggiornamenti in tempo reale di Capgo consentono di fornire velocemente miglioramenti e correzioni ai tuoi utenti, potrebbero esserci situazioni in cui hai bisogno di tornare a una versione precedente dell'app. Forse un nuovo aggiornamento ha introdotto un problema critico imprevisto, o forse desideri annullare un cambiamento mentre lavori su una soluzione.

Capgo fornisce diverse opzioni per gestire le costruzioni di un canale e controllare la versione dell'app che ricevono gli utenti, comprese opzioni di rollback manuale e meccanismi di sicurezza automatici.

Capgo include un meccanismo di sicurezza integrato per proteggere i tuoi utenti dai aggiornamenti rotti. Se si verifica un errore JavaScript prima che il metodo sia chiamato, il plugin si attiverà automaticamente per tornare alla versione precedente funzionante. notifyAppReady() Come funziona la protezione automatica del rollback

Sottosezione intitolata “Come funziona la protezione automatica del rollback”

Quando viene scaricato e applicato un nuovo aggiornamento, __CAPGO_KEEP_0__ aspetta che il tuo app chiami

When a new update is downloaded and applied, Capgo expects your app to call notifyAppReady() Automatic Rollback Protection

  • Il bundle JavaScript è stato caricato senza errori critici
  • La funzionalità di base dell'app è funzionante
  • L'aggiornamento è sicuro da mantenere

Se notifyAppReady() non viene chiamato a causa di un crash o un errore critico JavaScript, Capgo farà:

  1. Rileva che l'aggiornamento non si è inizializzato correttamente
  2. Riporta automaticamente al bundle precedente che funzionava
  3. Segna l'aggiornamento problematico come fallito per evitare che venga applicato nuovamente
import { CapacitorUpdater } from '@capgo/capacitor-updater'
// Call this after your app has successfully initialized
await CapacitorUpdater.notifyAppReady()

Questa protezione automatica aiuta a garantire che anche se accidentalmente pubblichi un aggiornamento rotto, i tuoi utenti non si ritrovino con un'app non funzionale.

Puoi configurare quanto tempo Capgo attende per essere chiamato impostando il notifyAppReady() in configurazione del tuo __CAPGO_KEEP_0__: appReadyTimeout in your Capacitor configuration:

{
"plugins": {
"CapacitorUpdater": {
"appReadyTimeout": 10000
}
}
}

valore viene specificato in millisecondi. Il timeout predefinito è tipicamente di 10 secondi, ma puoi regolarlo in base alle esigenze di inizializzazione dell'app. Se l'app richiede più tempo per caricarsi a causa di processi di inizializzazione complessi, potresti voler aumentare questo valore. appReadyTimeout Ritorno a una versione precedente del pacchetto

Sezione intitolata “Ritorno a una versione precedente del pacchetto”

Copia negli appunti

Ogni volta che carichi una nuova build e assegnerai a un canale, Capgo mantiene una storia di quelle build. Se hai bisogno di ripristinare una specifica aggiornamento, puoi selezionare uno di questi precedenti build per ri-deployarlo sul canale.

Interfaccia di rollback

La principale via per il rollback è attraverso l'interfaccia di rollback, che si trova nella 4ª scheda (Storia) quando si visualizza un canale nel Capgo Dashboard. Questa scheda fornisce una visione completa di tutte le build disponibili per il canale, consentendo di selezionare e ripristinare facilmente qualsiasi versione precedente.

Per eseguire il rollback utilizzando la scheda Storia:

  1. Accedi al Capgo Dashboard.

  2. Naviga alla sezione “Canali”.

  3. Clicca il nome del canale che desideri ripristinare.

  4. Vai alla 4ª scheda (Storia) nella visualizzazione del canale.

  5. Cerca la build che desideri ripristinare nella storia delle build.

  6. Seleziona quella build per renderla la build attiva per il canale.

  7. Conferma di voler ripristinare a questa build.

Metodo Alternativo: Utilizzare l'Icona della Corona

Sezione intitolata “Metodo Alternativo: Utilizzare l'Icona della Corona”

Come seconda opzione, puoi anche tornare indietro direttamente dalla prima scheda cliccando sull'icona della corona accanto a qualsiasi build nella cronologia dei build del canale:

  1. Nella prima scheda della vista del canale, trova il build che desideri ripristinare.
  2. Clicca sull'icona della corona accanto a quel build per renderlo il build attivo per il canale. Opzioni di gestione del canale
  3. Conferma di voler tornare a questo build.

Dopo aver ripristinato, i dispositivi configurati per ascoltare il canale aggiornato riceveranno il build precedente la prossima volta che controllano gli aggiornamenti. Il build ripristinato sarà trattato come un nuovo aggiornamento, quindi si applicano le condizioni e il flusso di aggiornamento usuali.

Se desideri interrompere temporaneamente gli aggiornamenti su un canale mentre investighi un problema, puoi scollegare il canale dalla sua versione corrente.

Per scollegare un canale:

  1. Accedi alla sezione del Capgo Dashboard.

  2. Clicca sul pulsante “Scollega” accanto alla versione corrente.

  3. Conferma di voler scollegare il canale.

Una volta scollegato un canale, non distribuirà più aggiornamenti. Gli dispositivi configurati su quel canale rimarranno sulla versione corrente fino a quando il canale non sarà collegato a una versione di nuovo.

Questo è utile se hai identificato un problema con un aggiornamento ma non sei ancora sicuro di quale versione desideri tornare indietro. Scollegando il canale hai il tempo di investigare senza spingere ulteriori aggiornamenti.

In situazioni più gravi, potresti voler riportare tutti i dispositivi su un canale alla versione web che era originariamente confezionata con il tuo binario nativo. Questo è noto come il “pacchetto integrato”.

Per forzare il pacchetto integrato su un canale:

  1. Naviga al canale nella Capgo Dashboard.

  2. Clicca sul pulsante “Pacchetto Integrato”.

  3. Conferma di voler forzare il pacchetto integrato.

Quando si forza il pacchetto integrato, tutti i dispositivi configurati su quel canale ritornano automaticamente alla versione web originale del pacchetto durante la loro prossima verifica di aggiornamento. Ciò avviene indipendentemente dalla versione attuale.

Questa è un'opzione di rollback più aggressiva rispetto a tornare a una versione precedente specifica, poiché elimina tutte le aggiornamenti live rilasciati dal momento in cui l'app è stata pubblicata nelle store di app.

Per catturare le problematiche velocemente e minimizzare l'impatto degli aggiornamenti problematici, è importante avere un piano per monitorare le proprie rilasci e rispondere ai problemi.

Alcune strategie includono:

  • Monitorare i rapporti di crash e le informazioni dei utenti immediatamente dopo l'aggiornamento di una versione
  • Utilizzare i rilasci fasi o un sistema di canale a fasi per testare gli aggiornamenti su un gruppo più piccolo prima di una diffusione più ampia
  • Avere un processo di decisione chiaro per quando riportare, disconnettere o forzare il pacchetto integrato, e chi ha l'autorità per farlo
  • Comunicare ai utenti sull'errore e sulla risoluzione, se appropriato

Combiniando la monitoraggio attento con la capacità di gestire velocemente gli aggiornamenti problematici, puoi fornire un'esperienza di app continuamente migliorata mentre minimizzi le interruzioni per i tuoi utenti