Problemi di Aggiornamento Comuni
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Quando un controllo di aggiornamento fallisce, Capgo di solito restituisce un error code e un message nel /updates risposta. Questa pagina spiega le più comuni fallite e le soluzioni più veloci.
Leggi questo prima
Sezione intitolata “Leggi questo prima”no_new_version_availableè uno stato normale, non una fallita.- Molti rapporti di "aggiornamento trovato ma non applicato" sono rifiuti di politica/configurazione piuttosto che ritardi di cache, soprattutto quando la risposta include un'espressione esplicita
errorcode. - Usa
npx @capgo/cli@latest app debugMentre si riproduce il problema per visualizzare i dettagli della richiesta/risposta.
Codici di errore comuni
Sottosezione intitolata "Codici di errore comuni"provider_infrastructure_request_blocked
Sottosezione intitolata "provider_infrastructure_request_blocked"Causa
L'applicazione ha Blocca le richieste di infrastruttura del provider abilitato e la richiesta è originata da un indirizzo IP di un datacenter Google o Apple noto. Capgo blocca queste richieste su /updates, /stats, e /channel_self evitare il traffico generato dal provider di essere trattato come traffico del dispositivo.
Risoluzione
- Riprodurre l'aggiornamento da un dispositivo fisico su una rete utente normale.
- Non utilizzare sensori o esecutori di provider ospitati in cloud per aggiornamenti, statistiche o verifiche di canale-self mentre questa protezione è attiva.
- Se quel traffico è intenzionale, apri la scheda Informazioni e disabilita Blocca le richieste di infrastruttura del provider. Riabilita quando il test è completo.
Gli app appena create hanno questa protezione abilitata di default. Le app create prima dell'introduzione della impostazione mantengono disabilitata fino a quando non l'abiliti.
Dettagli della risposta
/updatespreserva il contratto di risposta dell'aggiornatore e restituisce HTTP200La sua body includeerror,message,kind: "blocked", eprovider("google"o"apple")./statsand/channel_selfritorna HTTP429Con lo stesso errore code. Trattalo come un blocco di politica intenzionale, non come una condizione di riprova transitoria.
disable_auto_update_to_major
Disabilita l'aggiornamento automatico per versioni maggioriCause
Il tuo canale blocca gli aggiornamenti principali ("disable_auto_update = major) e il numero maggiore del bundle è superiore alla versione di base del dispositivo.
Sintomo tipico
version: 1.0.8 with old: 0.0.0 riferisce il dispositivo il livello di base 0.0.0Aggiornamenti principali rifiutati.
Come interpretarlo
Il backend confronta le versioni maggiori utilizzando il dispositivo di riferimento old e il target version.
- Se il target è
1.0.1, il valore di base maggiore deve essere1ad esempio1.0.0). - Se il target è
10.0.1, il valore di base maggiore deve essere10ad esempio10.0.0).
Aggiorna opzione A (consigliata): allinea baseline maggiore del dispositivo
Installa plugins.CapacitorUpdater.version in capacitor.config.* così MAJOR corrisponde al bundle MAJOR che desideri distribuire (ad esempio 1.0.0 per 1.0.1, 10.0.0 per 10.0.1).
Applica quindi questa configurazione all'app installata una volta.
- Esegui
npx cap sync. - Riavvia e reinstalla l'app nativa.
Rilassare la politica del canale B
Consenti aggiornamenti automatici inter-major nel menu Impostazioni del canale (solo se questa strategia di distribuzione è intenzionale).
Documenti correlati:
- Versione di destinazione: Disabilita l'aggiornamento automatico tra versioni maggiori
- Canali: Disabilita le strategie di aggiornamento automatico
disable_auto_update_to_minor / disable_auto_update_to_patch
Sezione intitolata “disabilita_aggiornamento_auto_minore / disabilita_aggiornamento_auto_patch”Causa
La politica del canale è più restrittiva (minor o patchpiuttosto che l'aggiornamento offerto.
minorblocks when the target bundle has a different major or minor than the device native baseline (version_build). Example:1.2.3 -> 1.3.0.patchblocca qualsiasi cambiamento di numero di versione maggiore, minore o di patchversion_build. Solo le modifiche di suffisso sono consentite mentreMAJOR.MINOR.PATCHrimane identico, come1.0.0-beta.1 -> 1.0.0-beta.2o1.0.0+build.1 -> 1.0.0+build.2.
Risolvi
- Carica un pacchetto compatibile con la politica corrente, o
- modifica la politica del canale nel dashboard/CLI.
Documenti correlati:
disable_auto_update_to_metadata
Sezione intitolata “disable_auto_update_to_metadata”Causa
Canale utilizza la targeting basato sui metadati ("version_numbere il livello di dispositivo è inferiore a quello richiesto min_update_version.
Risolvi
- Allinea dispositivo di riferimento ("
CapacitorUpdater.version) con la versione dell'applicazione nativa installata, o - adatta
min_update_versionla strategia del canale.
Documenti correlati:
disable_auto_update_under_native
Sezione intitolata “disable_auto_update_under_native”Causa
Il canale impedisce le retrogradazioni sotto la linea di base nativa.
Risolvi
- Carica una versione del pacchetto maggiore o uguale al livello di base nativo, o
- disabilita la protezione del downgrade "nativo" per quel canale.
Documenti correlati:
cannot_update_via_private_channel
Sezione intitolata “impossibile aggiornare tramite canale privato”Causa
Il canale selezionato/predefinito non consente l'assegnazione automatica del dispositivo.
Soluzione
- Utilizza un canale diverso con l'assegnazione automatica abilitata, o
- rendi il canale pubblico / abilita l'assegnazione automatica.
Documenti correlati:
unknown_version_build / semver_error
Sezione intitolata “versione costruzione sconosciuta / errore semver”Cause
Versione di base del dispositivo mancante ("unknown) o non valid semver.
Fix
- Soluzione
plugins.CapacitorUpdater.versionImposta valid semver like1.2.3. - Ripristina e ricostruisci l'app nativa.
Documenti correlati:
unsupported_plugin_version
Sezione intitolata “versione_plugin_non_supportata”Causa
La versione del plugin Updater è troppo vecchia per le richieste attuali del backend.
Soluzione
- Aggiornamento
@capgo/capacitor-updater. - Esegui
npx cap sync. - Riavvia e reinstalla l'app nativa.
disabled_platform_ios / disabled_platform_android
Sezione intitolata “piattaforma_disabilitata_ios / piattaforma_disabilitata_android”Causa
La canale ha le aggiornamenti disabilitati per quella piattaforma.
Soluzione
- Abilita il pulsante di piattaforma sul canale.
disable_prod_build / disable_dev_build / disable_device / disable_emulator
Sezione intitolata “disabilita_build_prod / disabilita_build_dev / disabilita_dispositivo / disabilita_emulatore”Causa
Il canale non consente il tipo di build corrente o il target runtime.
Soluzione
- Assicurati che le opzioni del canale (
allow_prod,allow_dev,allow_device,allow_emulator) con il tuo test target.
key_id_mismatch
Sezione intitolata “mismatch_key_id”Causa
Bundle encryption key and device key differ.
Soluzione
- Usa la stessa chiave di crittografia/chiave pubblica in app config e workflow di crittografia del bundle.
no_channel / null_channel_data
Sezione intitolata “nessun canale / dati del canale nulli”Causa
Non è stato risolto alcun canale valido per il dispositivo.
Risoluzione
- Imposta un canale di default cloud, o
- imposta
defaultChannelin edizioni di test, o - Assegna canale di override per dispositivo.
Documenti correlati:
on_premise_app
Sezione intitolata “applicazione on premise”Causa
La backend ha restituito HTTP 429 con on_premise_app. Ciò accade in tre situazioni:
- ID dell'app non esiste in Capgo — il
app_idinvia dal dispositivo non è registrato, quindi la backend non ne ha alcun record. - L'app è segnalata come on-premise — l'applicazione esiste ma è configurata per aggiornamenti self-hosted, quindi il Capgo endpoint cloud rifiuta di servirla.
- cloud endpoint rifiuta di servirla. Il piano di abbonamento dell'organizzazione è stato annullato
Errore comune
Errore comune plugins.CapacitorUpdater.appId (in capacitor.config.tso un disallineamento con l'ID dell'app registrata nel dashboard Capgo. Il backend non può distinguere l' 'applicazione sconosciuta' dall' 'applicazione on-premise', quindi restituisce lo stesso errore code.
Risolvi
- Verifica il
app_idcorrisponde esattamente a quanto mostrato nel dashboard Capgo (case-sensitive). - Se l'app non è ancora registrata, esegui
npx @capgo/cli@latest app add. - Se l'app è intenzionalmente on-premise, impostare
plugins.CapacitorUpdater.updateUrlal tuo endpoint di aggiornamento self-hosted al posto dell'URL cloud Capgo. - Se il piano di organizzazione è scaduto, rinnova o aggiorna il piano.
Elenco diagnostico rapido
Sottosezione intitolata “Elenco diagnostico rapido”- Conferma l'ID dell'app e il canale sono corretti per la build.
- Conferma
CapacitorUpdater.versioncorrisponde alla versione nativa dell'app installata. - Conferma politica del canale (
disable_auto_updateCorrisponde al rilascio previsto. - Conferma le impostazioni di piattaforma/compilazione consentono questo dispositivo.
- Esegui
npx @capgo/cli@latest app debuge leggi l'errore del backend code.
Hai bisogno di ulteriore aiuto?
Aiuto ulteriore necessario?Continua dall'elenco dei Problemi di Aggiornamento Comuni
Problemi comuni di aggiornamento: continuaSe stai utilizzando Problemi di Aggiornamento Comuni per pianificare il lavoro di plugin nativi, connettilo con Utilizzando @capgo/capacitor-aggiornatore per la capacità nativa in Utilizzando @capgo/capacitor-aggiornatore Capgo Directory dei Plugin per il workflow del prodotto nella cartella del Plugin Capgo. Capacitor Plugin da Capgo per la dettaglio di implementazione in Capacitor Plugin da Capgo Aggiungere o Aggiornare i Plugin per la dettaglio di implementazione in Aggiungere o Aggiornare i Plugin, e Alternative per Plugin Enterprise di Ionic per il flusso di lavoro del prodotto in Plugin Enterprise Ionic Alternativi.