Passer au contenu

Mise à jour manuelle

Si vous souhaitez gérer vous-même l’application des mises à jour, utilisez le mode manuel avec Capgo cloud

Voici ce que vous devez faire, configurez votre compte comme expliqué dans la section Démarrage

Configuration

Désactivez la mise à jour automatique dans votre capacitor.config.json

// capacitor.config.json
{
"appId": "*******",
"appName": "Name",
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}

Ensuite, ajoutez la logique pour gérer les mises à jour vous-même
Voici un exemple de la façon dont vous pouvez le faire :

import { CapacitorUpdater } from '@capgo/capacitor-updater'
import type { BundleInfo } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
import { App } from '@capacitor/app'
CapacitorUpdater.notifyAppReady()
let data: BundleInfo | null = null
App.addListener('appStateChange', async (state: any) => {
console.log('appStateChange', state)
if (state.isActive) {
console.log('getLatest')
// Effectuez le téléchargement pendant que l'application est active pour éviter les échecs de téléchargement
const latest = await CapacitorUpdater.getLatest()
console.log('latest', latest)
if (latest.url) {
data = await CapacitorUpdater.download({
url: latest.url,
version: latest.version,
})
console.log('download', data)
}
}
if (!state.isActive && data) {
console.log('set')
// Effectuez le changement lorsque l'utilisateur quitte l'application ou quand vous le souhaitez
SplashScreen.show()
try {
await CapacitorUpdater.set({ id: data.id })
}
catch (err) {
console.log(err)
SplashScreen.hide() // en cas d'échec du set, sinon la nouvelle application devra le cacher
}
}
})

Documentation de toutes les API disponibles dans le plugin :

Il existe certains cas d’utilisation où vous pouvez permettre aux utilisateurs de s’abonner à des canaux et d’essayer différentes versions :
https://capgo.app/blog/how-to-send-specific-version-to-users/