Saltare al contenuto

Da V3 a V4

Dopo aver discusso 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 nell'aggiornamento manuale l'utente doveva rimuovere l'app e reinstallarla, cosa che è un'esperienza utente terribile.

Mentre prendevo quest'opportunità per darti più libertà e rimuovere tutti i code che avevo fatto.

npm i @capgo/capacitor-updater@4

Se utilizzate l'esempio base nell'applicazione, potete migrare alla nuova versione senza problemi, divertitevi!

Per te, ancora semplice, le modifiche sono:

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

Per te, questa è la modifica più significativa, ma per il meglio! Otterrai molti miglioramenti, leggi attentamente.

  • autoUpdateUrl diventa updateUrl poiché questa impostazione può essere utilizzata anche in modalità manuale ora
  • Elimina cancelDelay e delayUpdate in favore di setDelay
  • Nessun aggiornamento versionName in set
  • Aggiorna version chiave, che è stata restituita in quasi tutte le funzioni come oggetto BundleInfo
interface BundleInfo {
id: string;
version: string;
downloaded: string;
status: 'success' | 'error' | 'pending' | 'downloading'
}
  • I Renomiati i nomi ingannevoli ora (anche se non può essere chiaro spiegando, ma al loro utilizzo è facile 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 postcontext: Pagina/Area: Pagina prodotto di aggiornamenti in tempo reale. Ruolo: Etichetta UI breve o elemento di navigazione. Chiave 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
  • lista restituisce 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 consente di ottenere dalla tua server impostato con updateUrl la versione disponibile più recente.
  • Metodo setDelay chi prende {tipo: “background” | “kill” | “nativeVersion” | “data”, valore? : string} come argomento per impostare il ritardo in modi diversi.
  • Metodo next, per impostare la versione nella prossima backgrounding, al contrario di 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 nel 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, 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.