Vai al contenuto

Aggiornamento Manuale

Se desideri gestire autonomamente quando viene applicato l’aggiornamento, utilizza la modalità manuale con Capgo cloud

Ecco cosa devi fare, configura il tuo account come spiegato in Iniziare

Configurazione

Disabilita l’auto-aggiornamento nel tuo capacitor.config.json

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

Quindi aggiungi la logica per gestire gli aggiornamenti autonomamente
Ecco un esempio di come puoi farlo:

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')
// Esegui il download durante il tempo di attività dell'app per prevenire download falliti
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')
// Esegui lo switch quando l'utente esce dall'app o quando vuoi
SplashScreen.show()
try {
await CapacitorUpdater.set({ id: data.id })
}
catch (err) {
console.log(err)
SplashScreen.hide() // in caso il set fallisca, altrimenti la nuova app dovrà nasconderlo
}
}
})

Documentazione di tutte le API disponibili nel plugin:

Ci sono alcuni casi d’uso in cui puoi permettere agli utenti di iscriversi ai canali e provare diverse versioni:
https://capgo.app/blog/how-to-send-specific-version-to-users/