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 quest'opportunità per darti più libertà e eliminare tutti i code che avevo fatto.

npm i @capgo/capacitor-updater@4

Se utilizzate l'esempio base nell'applicazione, potete migrare alla nuova versione, godetevi!

Per te, ancora semplice, le modifiche sono:

  • Nome del parametro da autoUpdateUrl da updateUrl
  • Il metodo dell'endpoint è cambiato da GET a POST

Per te, questa è la modifica più significativa, ma anche la migliore! Otterrai molte migliorie, leggi attentamente.

  • autoUpdateUrl diventa updateUrl poiché questo 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 chi era stato restituito 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 pacchetti, ad esempio 7Dfcd2RedN.
    • version si riferisce ora a versionName tu scegli per un pacchetto, ad esempio 1.0.0
  • updateUrl passare da get a postcontexto: Pagina/Area: Pagina prodotti di aggiornamento in tempo reale. Ruolo: Etichetta UI breve o elemento di navigazione. Chiave di messaggio `live_update_dynamic_label_to` (Etichetta dinamica di aggiornamento in tempo reale To). cap_ , poiché i header personalizzati erano un problema per alcuni di voi e post è più logico, tutti i precedenti header vanno nel corpo e il prefisso
  • versionName sparisce. getId
  • ritorna ora una lista di BundleInfo
  • Rinomina getId in getDeviceId
  • autoUpdate diventa vero di default, se utilizzi il modo Manuale, impostalo a falso.
  • 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 in metodo di download
  • notifyAppReady diventa obbligatorio anche in modalità manuale, se non viene chiamato dopo 10 sec l'app reversiona alla versione precedente.

@lincolnthree Grazie mille per aver iniziato questo lavoro, senza di te non sarebbe stato possibile rendere funzionale questa aggiornamento.

Se stai utilizzando From V3 to 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 per i dettagli di implementazione in Tipi di Aggiornamento