Aller directement au contenu

Mise à jour Types

Capgo supports several types of over-the-air (OTA) updates. This page lists and explains all of them so you can choose the right combination for your app.

Supports plusieurs types d'actualisations sur l'air (OTA). Cette page liste et explique tous les types afin que vous puissiez choisir la combinaison appropriée pour votre application.

Section intitulée « Appliquer le timing »

Contrôles lorsque une mise à jour est appliquée après qu'elle est téléchargée. Le plugin vérifie les mises à jour lorsque l'application passe en avant-plan et sur un horloge répétitif tout en restant ouverte. periodCheckDelay Contrôles cette intervalle (par défaut 10 minutes).

TypeDescriptionUtilisation
autoUpdate: atBackgroundVérifiez et téléchargez à chaque vérification en avant-plan, appliquez lorsque l'application passe en arrière-planLa plupart des applications; minimisation de la perturbation
autoUpdate: atInstallAppliquez immédiatement uniquement après une installation fraîche ou une mise à jour de l'application native ; sinon utilisez atBackgroundNouveaux utilisateurs obtiennent la dernière version ; les utilisateurs existants utilisent l'application de fond
autoUpdate : onLaunchAppliquez immédiatement uniquement au démarrage froid (arrêté → avant-plan) ; puis reculez-vous vers atBackgroundÉquilibre entre fraîcheur et stabilité de session
autoUpdate : alwaysVérifiez à chaque transition en avant-plan et appliquez immédiatement chaque fois qu'une mise à jour est disponibleCorrectifs critiques, applications avec un état simple
autoUpdate : onlyDownloadVérifiez et téléchargez automatiquement, émettez updateAvailable, et n'appliquez jamais automatiquementApplications qui montrent leur propre invite de mise à jour ou contrôlent exactement quand appeler set()

Configurez dans capacitor.config.ts:

plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground', // default; true is still accepted
// or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload'
}
}

Conditions qui doivent être remplies avant qu'une mise à jour soit installée. Utilisez setMultiDelay pour les combiner (toutes les conditions doivent être satisfaites).

ConditionDescriptionExemple
dateAttendez jusqu'à une date spécifique/heureCoordonner avec la mise à jour côté serveur
arrière-planAttendez une durée minimale (ms) après que l'application est en arrière-planÉvitez d'appliquer pendant des changements d'application rapides
version nativeExigez une version minimale de la bibliothèque native __CAPGO_KEEP_0__Empêchez les mises à jour sur des versions natives incompatibles code
killAttendez jusqu'à l'événement de suppression de l'application suivanteAppliquer uniquement lors d'un redémarrage complet
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.setMultiDelay({
delayConditions: [
{ kind: 'date', value: '2023-06-01T00:00:00.000Z' },
{ kind: 'background', value: '60000' },
],
});

Blocage de version (Politique de canal)

Sous-titre « Blocage de version (Politique de canal) »

Contrôle des mises à jour mises à jour semver un canal se livrera automatiquement. Défini via --disable-auto-update sur les canaux.

StratégieBlocsPermetUtilisation
aucunRienN'importe quelle version de bundle ciblePar défaut ; mise à jour complète automatique
majeurSupérieur à majeur version_buildpar exemple 1.2.3 -> 2.0.0Même version majeure, par exemple 1.2.3 -> 1.9.0 ou 1.2.3 -> 1.2.4Empêchez les modifications de version qui atteignent les natives anciennes code
mineureDifférent de la version majeure ou mineure que version_buildpar exemple 1.2.3 -> 1.3.0Même version majeure et mineure, par exemple 1.2.3 -> 1.2.4Conservez les mises à jour à l'intérieur d'une ligne native mineure
patchToute modification de numéro de version majeure, mineure ou patch, par exemple 1.0.0 -> 1.0.1Seuls les changements de suffixe MAJOR.MINOR.PATCH reste identique, par exemple 1.0.0-beta.1 -> 1.0.0-beta.2 ou 1.0.0+build.1 -> 1.0.0+build.2Mode le plus strict : pas de mouvement de version de la bibliothèque principale
méta-donnéesManquant min_update_version, ou version_build en dessous de celaBundle cible dont min_update_version est inférieur ou égal à version_buildRègles de compatibilité personnalisées par bundle

Ces vérifications comparant le bundle cible avec la base native transmise sous forme de version_build, et non le bundle téléchargé actuellement installé transmis sous forme de version_name.

Fenêtre de terminal
npx @capgo/cli channel set production --disable-auto-update major

Comment le bundle est transféré

à l'appareil.TypeDescription
Quand utiliserTout le bundleLe bundle JS complet est téléchargé
Première installation, grandes modifications, ou lorsque le delta n'est pas disponibleDelta (manifeste)Seuls les fichiers modifiés sont téléchargés, plus de mises à jour, plus rapide et plus économique en bande passante
Fenêtre de terminal
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta
CatégorieTypes
Appliquer un timingoff, atBackground, atInstall, onLaunch, always, onlyDownload
Conditions de retarddate, background, nativeVersion, kill
Blocage de versionnone, major, minor, patch, metadata
LivraisonBundle complet, Delta (manifeste)

Continuez de la section « Continuez de la mise à jour »

Section intitulée « Continuez de la mise à jour »

Si vous utilisez Mises à jour pour planifier la livraison d'actualisations en direct, connectez-le avec Capgo Mises à jour en direct pour le flux de travail du produit dans Capgo Mises à jour en direct, Vue d'ensemble pour les détails d'implémentation dans l'aperçu, Fonctionnalités pour les détails d'implémentation dans les fonctionnalités, Comportement de mise à jour pour les détails d'implémentation dans le comportement de mise à jour, et Démarrage pour les détails d'implémentation dans le démarrage.