Capgo Aggiornamenti delta: invia solo i file modificati con --delta
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Il sistema Live Update di Capgo può consegnare aggiornamenti più velocemente ed efficientemente inviando solo i file modificati, anziché l'intero bundle JS.
Questo è particolarmente utile per gli utenti con connessioni lente o a consumo, poiché riduce al minimo la quantità di dati da scaricare.
Un secondo vantaggio si verifica quando l'app contiene asset di grandi dimensioni che cambiano raramente, come immagini o video: rispetto ai file JS compressi, vengono scaricati solo una volta.
Come funzionano i Delta Updates
Section titled “How Delta Updates Work”Gli aggiornamenti delta in Capgo sono gestiti dal plugin Capgo installato nella tua app. Quando carichi una nuova versione della tua app utilizzando il --delta flag, Capgo esegue le seguenti operazioni:
- Ogni file nel tuo build viene caricato individualmente come file delta
- Vengono generati checksum per ogni file delta
- L'elenco dei file delta, con i relativi percorsi e checksum, viene salvato nel database di Capgo
Quando un dispositivo che esegue la tua app verifica la presenza di aggiornamenti, il plugin Capgo riceve l'elenco dei file delta per il nuovo bundle. Lo confronta con i file già presenti, identificando quali file sono stati modificati in base ai checksum e ai percorsi dei file.
Il plugin scarica quindi solo i file modificati, anziché l'intero bundle JS. Ricostruisce la nuova versione dell'app combinando questi file scaricati con i file invariati già presenti.
Quali dispositivi ricevono i Delta e quali lo zip completo
Sezione intitolata “Quali dispositivi ricevono Delta e quali ricevono lo zip completo”Un bundle caricato con --delta contiene sia un zip completo che file delta. Su un canale con il Zip + delta , ogni dispositivo riceve il pacchetto migliore supportato:
- I dispositivi con una versione del plugin che supporta Delta (
5.10.0+,6.25.0+,7.0.35+, o8+) scaricano solo i file delta modificati. - I dispositivi con una versione del plugin più vecchia senza supporto Delta scaricano lo zip completo.
- I bundle caricati senza
--deltanon hanno file delta, quindi ogni dispositivo scarica l'intero zip.
È quindi normale continuare a vedere alcuni download di zip completi dopo aver abilitato Delta. Provengono da dispositivi che eseguono ancora una build nativa precedente con una vecchia versione del plugin. Scompaiono man mano che gli utenti aggiornano l'app dal store.
Puoi modificarlo per canale con Formato download l'impostazione.
Aggiornamenti delta e utilizzo della banda
Sezione intitolata “Aggiornamenti Delta e utilizzo della banda”Gli aggiornamenti Delta riducono anche l'utilizzo della banda di Capgo. La banda conta solo i file che un dispositivo scarica davvero, quindi con Delta contano solo i file modificati, non l'intero bundle. I file o gli zip completi già in cache sull'edge non vengono conteggiati, e i download interrotti riprendono da dove si erano fermati senza conteggiare due volte la parte già scaricata. Vedi Come viene conteggiata la banda?.
Attivazione degli aggiornamenti delta
Sezione intitolata “Abilitazione di Delta Updates”Per abilitare gli aggiornamenti Delta per la tua app Capgo, basta usare il --delta flag da usare quando si carica una nuova versione:
npx @capgo/cli@latest bundle upload --deltaSe autoUpdate is set to an instant apply mode ("atInstall", "onLaunch", o "always") nel tuo capacitor.config, il CLI lo rileva. Negli ambienti non interattivi invia automaticamente gli aggiornamenti Delta, mentre in quelli interattivi ti chiede conferma prima dell'upload. La configurazione directUpdate legacy viene ancora rilevata. Usa --no-delta per forzare l'upload di un bundle completo.
Limitazioni degli aggiornamenti Delta
Sezione intitolata “Limitazioni degli aggiornamenti Delta”- File vuoti: I log di CLI
Ignoring empty file...ed esclude i file da zero byte dai file delta. Non fa fallire l'upload, quindi aggiungere un file vuoto può modificare il bundle risultante senza bloccare il deployment. Non includere file da zero byte nei percorsi dei bundle Delta. - Spazi nei percorsi: Gli upload Delta falliscono prima dell'invio dei file se un percorso del bundle contiene uno spazio. Rinomina il file o la directory per togliere gli spazi prima di caricare un aggiornamento Delta.
Imporre gli aggiornamenti Delta
Sezione intitolata “Imporre gli aggiornamenti Delta”Se vuoi assicurarti che tutti gli upload siano aggiornamenti Delta ed evitare upload accidentali di bundle completi, puoi usare il --delta-only flag:
npx @capgo/cli@latest bundle upload --delta-onlyQuando --delta-only Se viene usato, Capgo caricherà solo i file delta, senza uno zip completo. Qualsiasi dispositivo con una versione del plugin senza supporto Delta non potrà scaricare l'aggiornamento.
Potresti voler usare --delta-only se:
- Vuoi usare sempre gli aggiornamenti Delta e non vuoi mai permettere l'upload di bundle completi
- Stai configurando una pipeline CI/CD e vuoi assicurarti che tutti gli upload automatizzati siano Delta
- La tua app è grande e la banda è limitata, quindi devi minimizzare le dimensioni di upload/download
Se devi fare un upload del bundle completo mentre --delta-only è impostato, basta eseguire il comando di upload senza --delta-only. Questo sovrascriverà l'impostazione per quel singolo upload, permettendoti di pushare un bundle completo quando serve.
Risoluzione problemi
Sezione intitolata “Troubleshooting”Se gli aggiornamenti Delta non sembrano funzionare (ovvero i dispositivi scaricano sempre l'intero bundle JS anche per piccole modifiche), verifica bene che:
- Stai usando il
--deltaflag ogni volta che effettui l'upload di una nuova versione - Se usi
--delta-only, assicurati di non aver accidentalmente omesso il--deltaflag - Il tuo dispositivo sta eseguendo una versione del plugin con supporto Delta (
5.10.0+,6.25.0+,7.0.35+, o8+) - Il formato di download del canale non è Solo zip completo
- Il tuo dispositivo ha una connessione di rete stabile e può raggiungere i server Capgo
Puoi anche usare la webapp Capgo per controllare i dettagli del tuo ultimo upload:
- Vai a webapp
- Clicca sulla tua app
- Fai clic sul numero di bundle nella barra delle statistiche.
- Seleziona l'ultimo bundle
- Consulta la
Delta filesriga. Mostra Nessun file delta quando il bundle è stato caricato solo come zip completo.
Se continui ad avere problemi, contatta il supporto Capgo per ulteriore assistenza. Possono controllare i log del server per confermare che i caricamenti Delta vengono elaborati correttamente e che i dispositivi stanno ricevendo i file delta.
Ecco fatto! Il --delta flag istruisce Capgo a caricare i singoli file delta necessari per gli aggiornamenti Delta.
Nota che devi usare --delta ogni volta che carichi una nuova versione che desideri venga distribuita come aggiornamento Delta. Se ometti il flag, Capgo caricherà l'intero bundle JS come un singolo file e i dispositivi scaricheranno l'intero bundle anche se è cambiata solo una piccola parte.
Continua dagli aggiornamenti Delta
Sezione intitolata “Continua dagli aggiornamenti Delta”Se stai usando Aggiornamenti delta per pianificare la distribuzione di live update, collegalo a Live Updates di Capgo per il workflow del prodotto in Capgo Live Updates, Panoramica per i dettagli di implementazione nell'Overview, Funzionalità per i dettagli implementativi in Features, Comportamento degli aggiornamenti per i dettagli implementativi in Update Behavior, e Tipi di aggiornamento per i dettagli di implementazione in Tipi di aggiornamento.