Problemi noti
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Live reload di Ionic
Sezione intitolata “Ionic live reload”- Durante lo sviluppo, se utilizzi la funzione Ionic live reload di CLI, questa sovrascriverà il plugin, impedendoti di vedere l'update.
Live reload di Quasar
Sezione intitolata “Quasar live reload”- Sotto il cofano usa lo stesso sistema di Ionic, quindi non vedrai i tuoi aggiornamenti.
Update non riusciti
Sezione intitolata “Errori negli aggiornamenti”- Succede solitamente quando vengono pubblicati aggiornamenti pesanti (> 20mb): una gran parte degli utenti non riceverà l'ultima versione.
In passato gli utenti dovevano tenere l'app aperta fino al completamento del download; ora usiamo il download in background, ma è comunque limitato a pochi secondi.
Android
Sezione intitolata “Android”Impossibile scaricare
Sezione intitolata “Impossibile scaricare”Abbiamo riscontrato alcuni problemi con dispositivi in India: abbiamo chiamato un utente, gli abbiamo fatto provare diversi server DNS e ha funzionato.
Se riscontri il problema, prova a usare un server DNS diverso come Cloudflare o Google DNS.
Cloudflare: 1.1.1.1 e 1.0.0.1
Google DNS: 8.8.8.8 e 8.8.4.4 o dns.google
Self-hosted
Sezione intitolata “Self Hosted”Quando pubblichi un aggiornamento self-hosted, tieni presente che non puoi usare un endpoint “HTTP” perché va contro le policy di sicurezza delle app Android; se vuoi farlo comunque, segui questa guida:
Decomprimi
Sezione intitolata “Unzip”Problema di unzip: le voci DEFLATED possono avere un descrittore EXT
Se hai zippato il bundle con uno strumento diverso da CLI, il formato o lo zip potrebbero essere errati; usa il comando CLI npx @capgo/cli zip BUNDLE_FOLDER.
Questo è un problema noto di Java:
Problema clearfix
Sezione intitolata “Clearfix issue”- Se riscontri problemi con usesCleartextTraffic, è perché il plugin segue le best practice consigliate da SonarCloud; nel 90% dei casi funzionerà correttamente, ma con alcuni plugin potrebbero esserci problemi.
Per risolvere, aggiungi in android/app/src/main/AndroidManifest.xml nel <application> chiave:
tools:replace="android:usesCleartextTraffic"xmlns:tools="http://schemas.android.com/tools"Manifesto della privacy
Sezione intitolata “Privacy manifest”Aggiungi la NSPrivacyAccessedAPICategoryUserDefaults chiave del dizionario al tuo Privacy Manifest (solitamente ios/App/PrivacyInfo.xcprivacy):
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"> <dict> <key>NSPrivacyAccessedAPITypes</key> <array> <!-- Add this dict entry to the array if the file already exists. --> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategoryUserDefaults</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>CA92.1</string> </array> </dict> </array> </dict></plist>Consigliamo di dichiarare CA92.1 come motivo dell'accesso a UserDefaults API.
Permessi di rete
Sezione intitolata “Permessi di rete”Usando un server locale per testare l'update, l'app chiederà i permessi di rete; è un comportamento normale, non accade con un server remoto.
Entrambi gli OS
Sezione intitolata “Entrambi gli OS”In modalità manuale, alcuni eventi non sono facili da intercettare: ad esempio, l'evento di update fallito scatta subito prima che il tuo JS code si ricarichi, quindi non riuscirai a intercettarlo.
Un'alternativa è elencare i bundle e controllare le statistiche degli errori per sapere se l'update fallisce.
Dovremo trovare un modo migliore per gestirlo in futuro, ma non è una priorità, dato che la modalità auto è il modo consigliato per fare gli update.
I PR sono benvenuti per aiutarci a migliorare.
se il tuo CLI ha problemi a fare qualsiasi cosa,
Verifica se appId e appName sono presenti nel tuo capacitor.config.ts
Segui la guida della documentazione ufficiale:
Continua da Problemi noti
Sezione intitolata “Continua da Problemi noti”Se stai usando Problemi noti per pianificare il lavoro sui plugin nativi, collegalo a Usando @capgo/capacitor-updater per la funzionalità nativa in Usando @capgo/capacitor-updater, Directory dei plugin di Capgo per il workflow del prodotto nella Capgo Plugin Directory, Plugin Capacitor di Capgo per i dettagli di implementazione in Capacitor Plugins di Capgo, Aggiunta o aggiornamento dei plugin per i dettagli su come aggiungere o aggiornare i plugin, e Alternative ai plugin Ionic Enterprise per il workflow del prodotto in Alternative ai plugin Ionic Enterprise.