Zum Inhalt springen

Gekannte Probleme

  • Wenn Sie entwickeln und die Ionic Live-Überprüfungsfunktion aus dem CLI verwenden, wird sie die Plugin-Überprüfung überschreiben, sodass Sie Ihre Updates nie sehen werden.
  • Es verwendet das gleiche System wie Ionic unter der Haube, sodass Sie Ihre Updates nie sehen werden.
  • Das passiert normalerweise, wenn große Updates (> 20 MB) hochgeladen werden, ein großer Prozentsatz der Benutzer wird nicht die letzte Version erhalten.
    In der Vergangenheit mussten die Benutzer die App offen halten, bis der Download abgeschlossen war, jetzt verwenden wir den Hintergrund-Download, aber es ist immer noch begrenzt auf einige Sekunden.

Wir haben einige Probleme mit Geräten in Indien beobachtet, und wir haben den Benutzer auf dem Anruf, haben sie versucht, verschiedene DNS-Server zu verwenden, und es funktionierte.

Wenn Sie das Problem haben, versuchen Sie, einen anderen DNS-Server wie Cloudflare oder Google-DNS zu verwenden.

Cloudflare: 1.1.1.1 und 1.0.0.1

Google-DNS: 8.8.8.8 und 8.8.4.4 oder dns.google

Wenn Sie eine selbst gehostete Aktualisierung pushen, beachten Sie, dass Sie nicht den ‘HTTP’-Endpunkt verwenden können, da dies gegen die Sicherheitsrichtlinien von Android-Anwendungen verstößt. Wenn Sie es trotzdem tun möchten, folgen Sie dieser Anleitung:

Entpacken-Schwerpunkt: DEFLATET Einträge können EXT-Deklaratoren haben

Wenn Sie Ihr Bundle mit etwas anderem als CLI komprimiert haben, könnte die Formatierung oder Ihr Zip-Datei falsch sein, bitte verwenden Sie den CLI-Befehl npx @capgo/cli zip BUNDLE_FOLDER.

Dies ist ein bekanntes Problem von Java:

  • Wenn Sie Probleme mit usesCleartextTraffic haben, liegt es daran, dass das Plugin die gute Praxis empfiehlt, die von Sonar Cloud empfohlen wird, in 90% der Fälle funktioniert es einfach, aber mit einigen Plugins, die Probleme verursachen.

Um es zu beheben, fügen Sie in android/app/src/main/AndroidManifest.xml in <application> Schlüssel :

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

Fügen Sie den NSPrivacyAccessedAPICategoryUserDefaults Wörterbuch-Schlüssel zu Ihrem Datenschutzmanifest (normalerweise 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>

Wir empfehlen, das zu deklarieren CA92.1 als Grund für den Zugriff auf das UserDefaults API

Wenn Sie bei der Testung mit lokalem Server aktualisieren, wird die App nach Netzwerkrecht fragen, das ist ein normales Verhalten, es ist nicht der Fall, wenn Sie einen Remote-Server verwenden.

Wenn Sie bei manueller Aktualisierungsmodus Updates durchführen, sind einige Ereignisse nicht leicht zu fangen, zum Beispiel löst sich die Aktualisierung fehlschlägt, bevor Ihr JS code neu geladen wird, daher werden Sie es nicht fangen können.

Eine Alternative besteht darin, die Pakete aufzulisten und Fehlerstatistiken zu überprüfen, um zu wissen, ob die Aktualisierung fehlschlägt.

Wir müssen eine bessere Methode finden, um dies in Zukunft zu handhaben, aber es ist nicht priorisiert, da die Auto-Modus die empfohlene Methode zur Aktualisierung ist.

Pull-Anfragen sind willkommen, um uns dabei zu helfen, dies zu verbessern.

Wenn Ihr CLI Schwierigkeiten hat, irgendetwas zu tun,

Überprüfen Sie, ob appId und appName in Ihrem __CAPGO_KEEP_0__.config.ts capacitor.config.ts

__CAPGO_KEEP_0__-Konfiguration