Saltare al contenuto

Problemi noti

GitHub
  • Quando sviluppi, se utilizzi la funzione di ricarica live di Ionic dal CLI, sovrascriverà il plugin, quindi non vedrai mai le tue aggiornamenti.
  • Utilizza lo stesso sistema di Ionic sotto il cofano, quindi non vedrai le tue aggiornamenti.
  • Questo accade di solito quando vengono inviati aggiornamenti grandi (> 20mb), una grande percentuale di utenti non riceverà la versione più recente.
    In passato, gli utenti dovevano tenere l'app aperta fino a quando il download non era completo, ora utilizziamo il download in background, ma è ancora limitato a pochi secondi.

Abbiamo riscontrato alcuni problemi con i dispositivi in India e abbiamo messo gli utenti in contatto, abbiamo fatto loro provare diversi server DNS, e funziona.

Quindi se hai l'errore, prova a utilizzare un server DNS diverso come Cloudflare o Google DNS.

Cloudflare: 1.1.1.1 e 1.0.0.1

DNS Google: 8.8.8.8 e 8.8.4.4 o dns.google

Quando stai spingendo un aggiornamento auto-hosted, assicurati di non utilizzare l'endpoint “HTTP” poiché è contro le politiche di sicurezza degli app Android, se ancora vuoi farlo, segui questa guida:

Problema di scompattamento: gli elementi DEFLATED possono avere un descriptor EXT

Se hai scompresso il tuo bundle con qualcosa diverso dal CLI, il formato o il tuo zip potrebbe essere errato, per favore utilizza il comando CLI npx @capgo/cli zip BUNDLE_FOLDER.

Questo è un problema noto di Java:

  • Se hai problemi con usesCleartextTraffic, è perché il plugin segue la buona pratica raccomandata da sonar cloud, in 90% dei casi funziona solo bene, ma con alcuni plugin che causa problemi.

Per risolverlo, aggiungi in android/app/src/main/AndroidManifest.xml nel <application> chiave :

tools:replace="android:usesCleartextTraffic"
xmlns:tools="http://schemas.android.com/tools"

Aggiungi la chiave del dizionario al tuo NSPrivacyAccessedAPICategoryUserDefaults la dichiarazione di privacy (di solito Copia negli appunti 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>

come motivo per l'accesso ai CA92.1 __CAPGO_KEEP_0__. UserDefaults API.

Entrambe le OS

Quando si effettuano aggiornamenti in modalità manuale, alcuni eventi non sono facili da catturare, ad esempio il trigger dell'aggiornamento fallito si attiva proprio prima che il tuo JS code si ricarichi, quindi non riuscirai a catturarlo.

Un'altra alternativa è elencare i pacchetti e controllare gli stati di errore per sapere se l'aggiornamento fallisce.

Dobbiamo trovare un modo migliore per gestire questo in futuro, ma non è una priorità, poiché la modalità auto è il modo consigliato per effettuare gli aggiornamenti.

Sono accetti i PR per aiutarci a migliorare questo.

Se il tuo CLI ha problemi a fare qualsiasi cosa,

Controlla se appId e appName sono presenti nel tuo capacitor.config.ts

Segui la guida del documento ufficiale:

Se stai utilizzando Problemi noti per pianificare il lavoro del plugin nativo, connettilo con Utilizzando @capgo/capacitor-aggiornatore per la capacità nativa in Utilizzando @capgo/capacitor-aggiornatore, Capgo Directory del Plugin per il flusso di lavoro del prodotto nella cartella di plugin Capgo Capacitor plugin creati da Capgo per i dettagli di implementazione in Capacitor plugin creati da Capgo, Aggiunta o Aggiornamento di plugin per i dettagli di implementazione in Aggiunta o Aggiornamento di plugin, e Alternative plugin aziendali di Ionic Enterprise per il flusso di lavoro del prodotto in Alternative plugin aziendali di Ionic Enterprise