Zum Inhalt springen

Bekannte Probleme

  • Wenn Sie während der Entwicklung die Ionic Live-Reload-Funktion von CLI verwenden, wird sie die Plugin-Installation überschreiben, sodass Sie Ihre Updates nie sehen werden.
  • Es verwendet das gleiche System wie Ionic unter der Haube, daher sehen Sie Ihre Updates nicht.
  • Das passiert normalerweise, wenn große Updates (> 20 MB) hochgeladen werden, ein großer Prozentsatz der Benutzer erhält nicht die letzte Version.
    In der Vergangenheit mussten Benutzer die App offen halten, bis der Download abgeschlossen war, jetzt verwenden wir einen Hintergrunddownload, aber es ist immer noch auf wenige Sekunden begrenzt.

Kann nicht herunterladen

Abschnitt: Kann nicht herunterladen

Wir haben einige Probleme mit Geräten in Indien gesehen und haben Benutzer aufgerufen, verschiedene DNS-Server auszuprobieren, und es hat funktioniert.

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 diesem Leitfaden:

Entpacken-Problem: DEFLATETE Einträge können einen EXT-Deskriptor haben

Wenn Sie Ihr Bundle mit etwas anderem als dem CLI gepackt haben, könnte die Formatierung oder Ihr Zip 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 reibungslos, aber mit einigen Plugins verursacht es Probleme.

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

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

Fügen Sie dem NSPrivacyAccessedAPICategoryUserDefaults Wörterbuch-Schlüssel zu Ihrem Datenschutzmanifest (üblicherweise 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, die CA92.1 als Grund für die Zugriffsberechtigung auf UserDefaults API.

Wenn Sie für die Testung einen lokalen Server verwenden, wird die App nach Netzwerkrechten fragen, das ist ein normales Verhalten, es ist nicht der Fall, wenn Sie einen Remote-Server verwenden.

Wenn Sie manuell aktualisieren, sind einige Ereignisse nicht leicht zu fangen, zum Beispiel wird der Aktualisierungsfehler genau vor dem Neustart Ihres JS-code ausgelöst, sodass Sie es nicht fangen können.

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

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

PRs 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 sind in Ihrem capacitor.config.ts

Folgen Sie der Anleitung der offiziellen Dokumentation: