Saltare al contenuto

Troubleshooting

Ecco alcune problematiche comuni che potresti incontrare mentre utilizzi Capgo e come risolverle.

🚀 Hai bisogno di aiuto esperto?

Bloccato con un problema complesso? Il nostro team esperto è qui per aiutarti! Ricevi supporto personalizzato, code recensioni e soluzioni personalizzate adattate alle tue esigenze specifiche.

Il tuo ID applicazione in

  • corrisponde al tuo app in il __CAPGO_KEEP_0__ dashboard capacitor.config.ts Stai eseguendo il comando di caricamento dalla radice del tuo Capgo progetto
  • You’re running the upload command from the root of your Capacitor project
  • Opzioni avanzate di caricamento

Sezione intitolata “Opzioni avanzate di caricamento”

Opzioni avanzate di caricamento

The Capgo CLI fornisce alcune flag aggiuntive per aiutare con le comuni problematiche di caricamento:

  • --tus: Utilizza il protocollo di caricamento resumable tus per caricamenti più affidabili di grandi bundle o su connessioni di rete scarse. Se il tuo bundle supera i 10MB o sei su una connessione instabile, considera l'uso di Finestra del terminale --tus:

    Copia nella clipboard
    npx @capgo/cli@latest bundle upload --tus
  • --package-json : Insegna a __CAPGO_KEEP_0__ dove trovare la cartella radice --node-modules: Tells Capgo where to find your root package.json se il tuo app utilizza una struttura non standard come un repository unico o un ambiente di lavoro __CAPGO_KEEP_0__. Passa la percorso della cartella radice node_modules if your app uses a non-standard structure like a monorepo or npm workspace. Pass the path to the root package.json percorso: --node_modules percorso:

    Finestra del terminale
    npx @capgo/cli@latest bundle upload --package-json=path/to/package.json --node_modules=path/to/node_modules

    Capgo richiede questa informazione per poter compilare correttamente le dipendenze del tuo app.

Puoi combinare questi flag con altre opzioni come --channel in base alle tue esigenze. Consulta il Capgo CLI manuale per avere informazioni dettagliate su tutte le opzioni di caricamento disponibili.

Se hai ancora problemi con il caricamento, contatta Capgo supporto per ulteriore assistenza.

Se stai incontrando problemi con gli aggiornamenti in tempo reale, il comando di debug Capgo è uno strumento utile per risolvere il problema. Per utilizzarlo:

  1. Esegui il seguente comando nella directory del tuo progetto:

    Finestra del terminale
    npx @capgo/cli@latest app debug
  2. Lancia l'app sul tuo dispositivo o emulatore e esegui l'azione che dovrebbe attivare l'aggiornamento (ad esempio, riavviare l'app dopo aver caricato un nuovo bundle).

  3. Guarda l'output del comando di debug. Sarà registrato l'informazione sull'aggiornamento, compreso:

    • Quando l'app controlla gli aggiornamenti
    • Se viene trovato un aggiornamento e di quale versione si tratta
    • Progresso di download e installazione per l'aggiornamento
    • Qualsiasi errore che si verifica durante il processo di aggiornamento
  4. Utilizza i registri di debug per identificare dove si verifica il problema. Ad esempio:

    • Se non viene trovato alcun aggiornamento, controlla nuovamente che il tuo bundle sia stato caricato con successo e che l'app sia configurata per utilizzare il canale corretto.
    • If the update downloads but doesn’t install, make sure you’ve called CapacitorUpdater.notifyAppReady() e che l'app era stata chiusa completamente e riaperta.
    • If you see an error message, look up that specific error in the Capgo docs or reach out to support for help.

The debug command is especially useful for identifying issues with the update download and installation process. If the logs show the expected update version was found but not ultimately applied, focus your troubleshooting on the steps after the download.

In addition to the Capgo debug command, the native logs on Android, iOS, e Electron can provide valuable troubleshooting information, especially for issues on the native side of the update process.

To access the Android logs:

  1. Collega il tuo dispositivo o avvia il tuo emulatore
  2. Apre Android Studio e seleziona “Visualizza > Finestre degli strumenti > Logcat”
  3. In finestra di Logcat, filtrare i log per solo il processo dell'app selezionandolo dal menu a discesa in alto
  4. Cercare righe che includono Capgo per trovare i log SDK

Alternativamente, puoi utilizzare il adb logcat e cercare con grep per Capgo filtrare i log.

I log Capgo SDK registreranno gli eventi chiave durante il processo di aggiornamento, ad esempio:

  • Quando viene avviata la verifica dell'aggiornamento
  • Se viene trovato un aggiornamento e di quale versione si tratta
  • Quando inizia e si completa il download dell'aggiornamento
  • Quando viene attivato l'installazione dell'aggiornamento
  • Qualsiasi errore che si verifica durante i passaggi di aggiornamento nativi

Problemi Android specifici comuni che potresti vedere nei log includono:

  • Il problema di connettività di rete che impedisce il download dell'aggiornamento
  • Errori di autorizzazione dei file quando si salva o si legge il pacchetto di aggiornamento
  • Spazio di archiviazione esaurito per il pacchetto di aggiornamento
  • Fallimento nel riavviare l'app dopo l'installazione dell'aggiornamento

Per accedere ai log di iOS:

  1. Collega il tuo dispositivo o avvia il tuo simulatore
  2. Apri Xcode e vai a “Finestra > Dispositivi e simulatori”
  3. Seleziona il tuo dispositivo e clicca su “Apri Console”
  4. Nella console di output, cerca eventuali righe che includano Capgo per trovare i SDK log

Puoi anche utilizzare il log stream comando nella finestra del terminale e grep per Capgo per filtrare i log.

Simile a Android, il Capgo SDK registrerà gli eventi chiave iOS-side:

  • Iniziazione e risultato della verifica dell'aggiornamento
  • Inizio, progresso e completamento del download
  • Attivazione e risultato dell'installazione
  • Qualsiasi errore durante il processo di aggiornamento nativo

I problemi relativi ai certificati SSL quando si scarica l'aggiornamento

  • Blocco dell'aggiornamento del download da parte della sicurezza dei trasporti dell'app
  • I problemi iOS-specifici che potresti identificare nei log includono:
  • Spazio di archiviazione insufficiente per il bundle di aggiornamento
  • Fallimento nell'estrazione o nell'applicazione corretta del bundle di aggiornamento

Per le app di Electron, controlla sia l'output del processo principale che di quello renderer:

  1. Esegui l'app di Electron dal tuo terminale utilizzando il comando di avvio normale (ad esempio bun run electron:dev o bun run electron:serve) e osserva l'output del terminale per le operazioni di avvio, controlli di aggiornamento e errori di rete.
  2. Apri gli strumenti di sviluppatore nella finestra del renderer (Visualizza → Alternare strumenti di sviluppo) e ispeziona i registri di console e le richieste di rete fallite mentre si riproduce il flusso di aggiornamento.
  3. Per le app pacchettizzate, controlla gli strumenti di log del sistema per crash o fallimenti di avvio:
    • macOS: apri Console.app e filtra il nome del tuo app
    • Windows: apri Visualizzatore degli eventiRegistri di WindowsApplicazione
    • Linux: utilizza il tuo visualizzatore dei registri desktop o journalctl per il processo dell'app

Quando si debuggano gli aggiornamenti, confronta i messaggi da entrambi i registri dei processi principale e renderer per separare le questioni di avvio di Electron da Capgo le questioni del ciclo di vita degli aggiornamenti.

Nelle diverse piattaforme, i registri nativi forniscono una visione a livello inferiore del processo di aggiornamento, con più dettagli sulla implementazione nativa. Sono specialmente utili per l'identificazione delle questioni che si verificano al di fuori della layer JavaScript di Capgo.

Quando si risolve un problema di aggiornamento live complesso, è una buona idea catturare sia i registri di debug di Capgo che i registri nativi per una visione completa di cosa sta succedendo. I due registri insieme daranno la migliore possibilità di identificare e risolvere il problema.

Se hai caricato un bundle ma non vedi i cambiamenti sul tuo dispositivo:

  • Assicurati di aver chiamato CapacitorUpdater.notifyAppReady() in tua app code come mostrato nel quickstart
  • Verifica che il tuo dispositivo sia connesso a Internet e i Capgo log di debug mostrino che l'aggiornamento è stato scaricato
  • Prova a chiudere completamente e riaprire l'app, poiché gli aggiornamenti vengono applicati solo al lancio fresco
  • Cerca eventuali errori nei log nativi che potrebbero indicare un problema nell'applicazione dell'aggiornamento

Consultare il deploying live updates guida per ulteriori informazioni sul processo di aggiornamento. Se sei ancora bloccato, utilizza il npx @capgo/cli@latest app debug comandi e registri nativi per ottenere una maggiore visibilità su cosa sta accadendo.

Se i tuoi registri mostrano errori di backend come disable_auto_update_to_major, semver_error, o cannot_update_via_private_channel, utilizza la guida dedicata:

Spiega cosa significa ogni code comune, perché accade e come risolverlo.

Se hai difficoltà nell'installare il Capgo SDK, assicurati:

  • Il tuo app utilizza una versione supportata di Capacitor (4.0 o successiva)
  • Hai seguito i passaggi del quickstart, compreso l'aggiornamento della tua app dopo l'installazione del __CAPGO_KEEP_0__ quickstart Per i problemi con l'invio di SDK dagli script di integrazione continua e distribuzione continua:

Controlla che il tuo token di autenticazione Capgo sia configurato correttamente

  • Double check your Capgo authentication token is set up correctly
  • Verifica che il comando di upload stia utilizzando il nome del canale corretto per il tuo ambiente di destinazione
  • CI/CD integration

Per ulteriori suggerimenti di risoluzione dei problemi consulta i docs per l'integrazione CI/CD Puoi anche utilizzare il npx @capgo/cli@latest app debug commando per confermare se le tue aggiornamenti attivati dal CI/CD vengono ricevuti dall'app.

Se stai utilizzando Troubleshooting per pianificare lo storage e la gestione dei file, connettilo con @capgo/capacitor-storage-dati-sqlite per i dettagli di implementazione in @capgo/capacitor-storage-dati-sqlite, Utilizza @capgo/capacitor-storage-dati-sqlite per la capacità nativa in Utilizza @capgo/capacitor-storage-dati-sqlite, @capgo/capacitor-file per i dettagli di implementazione in @capgo/capacitor-file, Utilizzando @capgo/capacitor-file per la capacità nativa in Utilizzando @capgo/capacitor-file, e @capgo/capacitor-uploader per il dettaglio di implementazione in @capgo/capacitor-uploader.