When rilasciando una versione maggiore
La versioning può essere difficile da gestire, di solito desideri inviare un aggiornamento maggiore quando un cambiamento maggiore appare per gli utenti.
Ma la versioning non è fatta per questo, la versione dell'app store è diversa dalla versione nativa.
La versione nativa è fatta per gestire il cambiamento di rottura nella code
In IOS, ad esempio, iOS 16 è la store version di Apple, ma la versione code è 20A5283p (non sembrano utilizzare SemVer lì)
Ora è chiaro che non li mescoliamo e li utilizziamo per quello per cui sono fatti!
Rilascio maggiore
In your Capacitor app, a major release is necessary when a breaking change happens. For example, a new IOS target (15 to 16), or a new version of Capacitor (3 to 4), or a plugin (1.2 to 2.0) you use have been updated to a major version.
Questo cambiamento significa che tutte le attrezzature devono essere allineate per gestire il cambiamento di rottura.
Perché Capgo segue questo sistema.
Quindi se rilasci una versione maggiore, Capgo non la invierà a un utente che non l'ha installata dal negozio.
Questo comportamento può essere personalizzato. Puoi imparare di più su di esso qui
Versioni
Dove Capgo trova la versione da confrontare
iOS
Verrà utilizzato da Capgo per confrontarlo con la versione JavaScript e trovare l'aggiornamento maggiore
In iOS la variabile è impostata nel tuo progetto qui ios/App/App/Info.plist sotto la chiaveCFBundleShortVersionString o ios/App/App.xcodeproj/project.pbxproj o MARKETING_VERSION o MARKETING_VERSION E' stato impostato nel tuo Info.plist file.
Potrai sovrascrivere questo comportamento impostando la chiave versione nel
capacitor.config.jsonfile documentazione qui
Android
Verrà utilizzato da Capgo per confrontarlo con la versione JavaScript e trovare l'aggiornamento maggiore
in Android, la variabile viene impostata sul tuo progetto qui android/app/build.gradle sotto la chiave defaultConfig.versionName
Potrai sovrascrivere questo comportamento impostando la chiave versione nel
capacitor.config.jsonfile documentazione qui
JavaScript
Verrà utilizzato da Capgo per confrontare con la versione nativa e trovare l'aggiornamento maggiore
in JavaScript, la variabile è impostata sul tuo progetto qui package.json sotto la chiave version
Esempio
La tua app Ionic è attualmente rilasciata con la versione 1.2.3 con Capacitor 3
Stai facendo l'aggiornamento a capacitor 4.
Devi aggiornare il numero di versione del tuo progetto a 2.2.3, quindi tutti i tuoi pacchetti includono Capgo con la notifica di questo grande cambiamento.
Quando rilasci questa versione su Capgo e su App Store.
Tutti i prossimi aggiornamenti live su Capgo 2.2.4 non verrà mai inviato all'utente con 1.2.3 solo con 2.2.3 versione.
Se segui questo modello, non c'è bisogno di preoccuparsi ulteriormente, tutto è gestito correttamente.
Se non seguo questo
In questo caso, ciò significa che dovrai inviare la tua nuova app con Capacitor 4 a Apple e Google, ma non a Capgo.
Poi dovrai attendere che il 100% dei tuoi utenti, abbia l'applicazione o almeno l'80%, ci vorranno mesi, probabilmente.
Mentre in questo periodo non puoi inviare alcuna aggiornamento con Capgo, poiché gli utenti vecchi non possono ricevere la nuova versione. Non hai un modo per selezionare solo alcuni utenti per ricevere l'aggiornamento.
Continua da Come rilasciare una versione maggiore in capgo
Se stai utilizzando Come rilasciare una versione maggiore in capgo per pianificare il rollback e il controllo delle versioni, connettilo con Ripristini per i dettagli di implementazione in Ripristini, Targetizzazione della Versione context per i dettagli di implementazione in Targetizzazione della Versione, Comportamento dell'Aggiornamento per i dettagli di implementazione in Comportamento dell'Aggiornamento, pacchetto Capgo Live Updates Capgo Aggiornamenti in Tempo Reale