Saltare al contenuto

Da V3 a V4

Dopo aver parlato molto nella community di Discord con te. Ho scoperto che il modo manuale era troppo manuale e non sicuro da utilizzare, ad esempio, l'auto-reversione non era possibile, quindi se hai fallito l'aggiornamento in modalità manuale, l'utente doveva rimuovere l'app e reinstallarla, il che è un'esperienza utente terribile.

Mentre prendevo questa come un'opportunità per darti più libertà e rimuovere tutti i code che ho fatto.

npm i @capgo/capacitor-updater@4

Se utilizzate l'esempio base nell'applicazione, siete al sicuro per migrare alla nuova versione, godetevi!

Per voi, ancora semplice, le modifiche sono:

  • Nome della impostazione da autoUpdateUrl in updateUrl
  • Il metodo dell'Endpoint è cambiato da GET a POST

Per voi, questa è la modifica più significativa, ma anche la migliore! Avete una quantità di miglioramenti, Leggete attentamente.

  • autoUpdateUrl diventa updateUrl poiché questa impostazione può essere utilizzata anche in modalità manuale adesso
  • Cancellazione di cancelDelay e delayUpdate in favore di setDelay
  • Non più versionName in impostazione
  • Cambia version chiave, che era restituita in quasi tutte le funzioni come oggetto BundleInfo
interface BundleInfo {
id: string;
version: string;
downloaded: string;
status: 'success' | 'error' | 'pending' | 'downloading'
}
  • Rinominato di nomi ingannevoli adesso (anche se non potrebbe essere chiaro all'uso, ma alla fine è facile da capire il nuovo):
    • cosa veniva chiamata un version ora si riferisce a un bundle
    • id si riferisce all'antico version chi era una stringa casuale di 10 caratteri, questo id è l'unica via affidabile e unica per accedere ai tuoi bundle, ad esempio 7Dfcd2RedN.
    • version si riferisce ora a versionName tu scegli per un bundle, ad esempio 1.0.0
  • updateUrl passare da get a postpoiché i header personalizzati erano un problema per alcuni di voi e post è più logico, tutti i precedenti header vanno nel corpo e il prefisso cap_ disparire.
  • versionName metodo è stato cancellato, in favore di getId
  • ritorna ora una lista di BundleInfo
  • Rinomina getId in getDeviceId
  • autoUpdate diventa vero di default, se utilizzi il modo Manuale, impostalo su false.
  • Metodo getLatestquesto metodo ti consente di ottenere dalla tua server impostato con updateUrl l'ultima versione disponibile.
  • Metodo setDelay chi prende {tipo: “background” | “kill” | “nativeVersion” | “data”, valore? : string} come argomento per impostare il ritardo in diverse modalità.
  • Metodo next, per impostare la versione nella prossima backgrounding, in contrasto con set chi lo fa istantaneamente.
  • Metodo isAutoUpdateEnabled, per informarti se sei in contesto di aggiornamento automatico
  • Evento downloadComplete quando il download raggiunge il 100%
  • Aggiunto campo obbligatorio version nella metodo di download
  • notifyAppReady diventa obbligatorio anche in modalità manuale, se non viene chiamato dopo 10 sec l'app reverterà alla versione precedente.

@lincolnthree Grazie mille per aver iniziato questo lavoro, era impossibile far funzionare questa aggiornamento senza di te.

Se stai utilizzando From V3 a V4 per pianificare la consegna di aggiornamenti in tempo reale, connettilo con Capgo Live Updates for the product workflow in Capgo Live Updates, Panoramica per i dettagli di implementazione in Overview Caratteristiche per i dettagli di implementazione in Caratteristiche Comportamento dell'aggiornamento per i dettagli di implementazione in Comportamento dell'aggiornamento, e Tipi di Aggiornamento Modifica pagina