Salta al contenuto principale
Tutorial

Come funzionano le versioni in Capgo

Scopri come Capgo gestisce le versioni nella tua app Capacitor per usarlo al meglio. Scopri il significato di major, minor e patch.

Come funzionano le versioni in Capgo

Capgo usa 2 variabili principali per gestire le versioni nella tua app Capacitor:

  • Versione Native
  • Versioni JavaScript
Sistema di update di Capacitor

Tutte le scelte sulle versioni sono gestite lato server da Capgo.

Sistema di versionamento

Per gestire le versioni di Capgo usa il sistema SemVer. Leggi la specifica SemVer o controlla la compatibilità degli aggiornamenti di Capgo con il Semver Tester.

Versioni

Dove Capgo trova la versione da confrontare

Puoi sovrascrivere questo comportamento impostando la chiave version nel capacitor.config.json file docs qui La versione native verrà ignorata per tutte le piattaforme.

iOS

In iOS, la variabile è impostata qui nel progetto ios/App/App/Info.plist sotto la chiaveCFBundleShortVersionString o ios/App/App.xcodeproj/project.pbxproj sotto la chiave MARKETING_VERSION se MARKETING_VERSION è stata impostata nel tuo Info.plist file.

Android

In Android, la variabile è impostata qui nel progetto android/app/build.gradle sotto la chiave defaultConfig.versionName

JavaScript ( versione bundle Capgo )

In JavaScript, la var può essere impostata nel tuo package.json sotto la chiave version Altrimenti, devi fornirla nel comando di upload.

Comportamento predefinito

Ecco come si comporterà il canale Capgo se non modifichi alcuna impostazione.

Questo comportamento si baserà sul canale unico che hai impostato come predefinito.

Durante una nuova installazione della tua app Capacitor

Quando l'utente scarica la tua app Ionic per la prima volta e la apre, contatta il server Capgo.

Attualmente, possono verificarsi 4 output:

  • La versione del bundle nativo (1.2.3) è inferiore alla versione del bundle Capgo (1.2.4), Capgo invia il suo bundle all'utente.
  • La versione del bundle nativo (1.2.3) è uguale alla versione del bundle Capgo (1.2.3), Capgo risponde "nessun aggiornamento necessario".
  • La versione del bundle nativo (1.2.4) è superiore alla versione del bundle Capgo (1.2.3), Capgo risponde "nessun aggiornamento necessario".
  • La versione del bundle nativo (1.2.3) è molto inferiore alla versione del bundle Capgo (2.2.3), quindi Capgo invia “no need to update”.

Altre impostazioni

Disabilita auto-downgrade sotto il nativo

Se imposti questa opzione su false, Capgo considererà sempre la versione nativa come la fonte attendibile. Il comportamento sarà il seguente:

  • La versione nativa (1.2.4) è superiore alla versione Capgo (1.2.3)

Capgo invia la propria versione all'utente.

Disabilita la strategia di auto-upgrade

There are a couple of strategies you can chose from. You can learn more about it qui

Versione del bundle JavaScript

La versione del bundle JavaScript è quella che invii quando esegui npx @capgo/cli@latest bundle upload --channel production

Se non hai usato l'opzione --bundle 1.2.3, Capgo recupererà la versione del bundle dal tuo package.json file (nella chiave version).

Dopo che la tua app Ionic ha installato una versione da Capgo, questa versione verrà utilizzata per il confronto:

  • La versione del bundle JavaScript (1.2.3) è inferiore alla versione del bundle di Capgo (1.2.4), Capgo invia il bundle all'utente.

Con alcune condizioni di controllo:

  • Se la versione del bundle nativo è superiore alla versione di Capgo, la Disable auto downgrade under native condizione viene applicata.
  • Se la versione del bundle nativo è MAJORmente inferiore alla versione di Capgo, l' Disable auto upgrade above major condizione viene applicata.

aggiornamento dell'App Store

Quando pubblichi la tua app JS con Capacitor sull'App Store, ciò che accade è semplice.

L'utente scaricherà la nuova versione dallo store e, per impostazione predefinita, rimuoverà tutti gli update locali dall'app.

Se desideri modificare questo comportamento, devi impostare la relativa configurazione resetWhenUpdate scopri di più qui

Questa modifica può essere fatta solo lato app, non dal cloud come altre impostazioni.

Altre impostazioni

Dopo tutto questo, è possibile avere sopra di esso dei comportamenti specifici legati al deviceID.

In Capgo, puoi decidere di sovrascrivere il comportamento per ogni deviceID.

Puoi collegare un deviceID a:

  • una specifica versione del bundle
  • un canale specifico

Questo bypasserà tutte le impostazioni definite sopra.

Scopri di più nell'articolo qui sotto.

Continua da Come funzionano le versioni in Capgo

Se stai usando Come funzionano le versioni in Capgo per pianificare il lavoro sui plugin nativi, collegalo a Directory dei plugin di Capgo per il workflow del prodotto nella Capgo Plugin Directory, Plugin Capacitor di Capgo per i dettagli di implementazione in Capacitor Plugins di Capgo, Aggiunta o aggiornamento dei plugin per i dettagli sull'implementazione in Adding or Updating Plugins, Alternative ai plugin Ionic Enterprise per il workflow del prodotto in Ionic Enterprise Plugin Alternatives, e Capgo Native Build per il workflow di prodotto in Capgo Native Builds.

Live updates per le app Capacitor

Quando un bug nel web-layer è live, rilascia la fix tramite Capgo invece di aspettare giorni l'approvazione degli store. Gli utenti ricevono l'update in background, mentre le modifiche native restano nel normale processo di review.

Ultimi articoli dal blog

Capgo ti offre gli insight migliori che ti servono per creare un'app mobile davvero professionale.