Types d'actualisation
Copiez une commande de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Capgo prend en charge plusieurs types d'actualisations en ligne (OTA). Cette page liste et explique tous les types afin que vous puissiez choisir la combinaison appropriée pour votre application.
Appliquer le timing
Section intitulée « Appliquer le timing »Contrôles lorsqu'un une mise à jour est appliquée après qu'elle est téléchargée.
| Type | Description | Utilisation |
|---|---|---|
autoUpdate: atBackground | Télécharger en arrière-plan, appliquer lorsque l'utilisateur ferme ou tue l'application | La plupart des applications; minimisation de la perturbation |
autoUpdate: atInstall | Appliquer immédiatement uniquement lors d'une installation fraîche ou d'une mise à jour de l'App Store | Nouveaux utilisateurs obtiennent la dernière version; les utilisateurs existants utilisent le flux par défaut |
autoMise à jour : onLaunch | Appliquer immédiatement lors de l'installation, de la mise à jour ou après la fermeture de l'application | Équilibre entre fraîcheur et stabilité de session |
autoMise à jour : always | Appliquer immédiatement dès que l'une des mises à jour est téléchargée (y compris lors de la reprise) | Fixes critiques, applications avec un état simple |
autoMise à jour : onlyDownload | Télécharger automatiquement et émettre updateAvailable mais jamais appliquer ou définir le prochain bundle automatiquement | Applications qui montrent leur propre invite de mise à jour ou contrôlent exactement quand appeler set() |
Configurer dans capacitor.config.ts:
plugins: { CapacitorUpdater: { autoUpdate: 'atBackground', // default; true is still accepted // or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload' }}Conditions de retard
Section intitulée “Conditions de retard”Conditions qui doivent être remplies avant qu'une mise à jour soit installée. Utilisez setMultiDelay pour les combiner (toutes les conditions doivent être satisfaites).
| Condition | Description | Exemple |
|---|---|---|
| date | Attendez jusqu'à une date spécifique/heure | Coordonnez-vous avec la mise à jour côté serveur |
| arrière-plan | Attendez une durée minimale (ms) après que l'application est mise en arrière-plan | Évitez d'appliquer pendant des changements d'application rapides |
| version native | Exigez une version minimale de la version native du binaire | Bloquez les mises à jour sur la version native incompatible code |
| tuer | Attendez jusqu'à l'événement suivant de mise à mort de l'application | Appliquer uniquement à la mise à niveau complète |
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)
Section intitulée « Blocage de version (Politique de canal) »Contrôle des mises à jour semver Les mises à jour que un canal livrera automatiquement. Défini via --disable-auto-update sur les canaux.
| Stratégie | Blocs | Permet | Cas d'utilisation |
|---|---|---|---|
| aucun | Rien | N'importe quelle version de l'ensemble cible | Par défaut; mise à jour complète automatique |
| majeur | Majeur supérieur à version_buildpar exemple 1.2.3 -> 2.0.0 | Même majeur, par exemple 1.2.3 -> 1.9.0 ou 1.2.3 -> 1.2.4 | Prévenir les modifications de rupture d'arrivée sur les natives anciennes code |
| mineur | Différent majeur ou mineur que version_buildpar exemple 1.2.3 -> 1.3.0 | Même majeur et mineur, par exemple 1.2.3 -> 1.2.4 | Conserver les mises à jour à l'intérieur d'une ligne native mineure |
| patch | Toute modification de numéro majeur, mineur ou patch, par exemple 1.0.0 -> 1.0.1 | Seuls les changements de suffixe tandis que 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.2 | Mode strict : pas de mouvement de version de la couche de base |
| metadata | Manquant min_update_version, ou version_build en dessous de cela | Bundle cible dont min_update_version est inférieur ou égal à version_build | Règles de compatibilité personnalisées par bundle |
Ces vérifications comparent le bundle cible avec la base native transmise sous la forme version_build, et non le bundle téléchargé et installé actuellement transmis sous la forme version_name.
npx @capgo/cli channel set production --disable-auto-update majorComment le
bundle est transféréTypes de livraison Comment le au appareil.
| Type | Description | Lorsque l'utiliser |
|---|---|---|
| Tout le bundle | Tout le bundle JS est téléchargé | Premièrement installer, de grandes modifications, ou lorsque le delta n'est pas disponible |
| Delta (manifeste) | Seulement les fichiers modifiés sont téléchargés | La plupart des mises à jour ; plus rapide et plus économique en bande passante |
# Full bundle (default)npx @capgo/cli bundle upload --channel production
# Delta updatesnpx @capgo/cli bundle upload --channel production --deltaSection intitulée “Référence Rapide”
Catégorie| Types | Moment d'application __CAPGO_KEEP_0__ |
|---|---|
| __CAPGO_KEEP_1__ | off, atBackground, atInstall, onLaunch, always, onlyDownload |
| Conditions de retard | date, background, nativeVersion, kill |
| Blocage de version | none, major, minor, patch, metadata |
| Livraison | Bundle complet, Delta (manifeste) |
- Comportement de mise à jour — Configurez le moment d'application et les retards
- Ciblage de version — Routage de version basé sur le canal
- Mises à jour Delta (manifeste) — Activer les téléchargements partiels
- Canaux — Configuration et priorité des canaux
Continuez de la mise à jour des types
Section intitulée “Continuez de la mise à jour des types”Si vous utilisez Mises à jour des types pour planifier la livraison de mises à jour en direct, connectez-le avec Capgo Mises à jour en direct pour le flux de travail du produit dans Capgo Mises à jour en direct, Présentation pour les détails d'implémentation dans Présentation, Fonctionnalités pour les détails d'implémentation dans les fonctionnalités, Mise à jour du comportement pour les détails d'implémentation dans la mise à jour du comportement, et Prise en main pour les détails d'implémentation dans la prise en main.