Zum Inhalt springen

Debugging

GitHub

Wenn Sie eine Cloud-Verweigerung code erhalten und eine tiefergehende Remediation-Anleitung benötigen, sehen Sie sich Gemeinsame Update-Probleme.

Capgo-Protokolle können Metadaten für das Ereignis enthalten. Im Dashboard filtern Sie nach dem snake_case-Aktion code und klicken Sie auf die Metadaten-Zelle, um die vollständige JSON-Payload zu kopieren. Metadaten sind insbesondere für Crash- und WebView-Ereignisse nützlich, da sie den Fehlermeldung, die Quell-URL, die Zeilen- und Spaltennummer, den Prozessstatus, den Speicherdruck oder die plattformabhängige Ursache enthalten können. Ältere Protokolle können noch Legacy-CamelCase-Aliase in Klammern auflisten.

Jeder Abschnittstitel entspricht der Aktion code im Konsole-Protokolle-Tabelle, sodass Sie direkt darauf verweisen können.

Backend-Ablehnungen im Zusammenhang mit Rechnungsstellung, Drosselung oder nicht-fehlerhaften Zuständen.

Was bedeutet das?

Capgo hat Verkehr erkannt, der wie von Google oder Cloud-Infrastruktur stammt. Updates unter vier Stunden alt werden ignoriert, damit Bot-Verkehr nicht als abrechnungsfähige Geräte gezählt wird.

Was tun?

Übergehen Sie dies bei echten Benutzern. Versuchen Sie es erneut von normalen Netzwerken und echten Geräten aus oder warten Sie und überprüfen Sie es später erneut.

provider_infrastructure_request_blocked

Hinweis: "provider_infrastructure_request_blocked"

Was bedeutet das?

Ihre App ist so konfiguriert, dass sie Anforderungen von bekannten Google- und Apple-Datencenter-IP-Adressen blockiert. Die Schutzfunktion gilt für Aktualisierungsprüfungen, Statistiken und Anfragen an den Kanal selbst, sodass Cloud-Hosted-Proben und Provider-Runner auch dann diese Antwort erhalten können, wenn die App-Konfiguration ansonsten gültig ist.

Was tun?

Versuchen Sie es erneut von einem physischen Gerät auf einem normalen Benutzer-Netzwerk aus. Wenn der provider-herkommende Verkehr absichtlich ist, deaktivieren Sie temporär "Block provider infrastructure requests". Hinweis: "InvalidIp" im App’s Information Dann aktivieren Sie es erneut nach dem Test. Neue Apps aktivieren diese Einstellung standardmäßig; bestehende Apps behalten ihre vorherige deaktivierte Einstellung, bis sie geändert werden.

Was bedeutet es

Ihre Organisation hat das Plan- oder Gerätelimit erreicht. Das Gerät erhält keine Updates, bis Sie ein Upgrade durchführen oder der nächste Abrechnungszyklus die Verwendung zurücksetzt.

Was tun

Erhöhen Sie Ihr Plan im Dashboard oder warten Sie auf den nächsten Abrechnungszyklus.

Was bedeutet es

Das Gerät hat bereits die neueste Bundle-Version für seinen Kanal. Dies ist ein normaler Zustand und kein Fehler.

What bedeutet es

Der Gerät hat zu viele Update- oder Kanal-Anfragen in kurzer Zeit gesendet.

Was tun

Stoppen Sie die Aufrufe von Update-APIs innerhalb von Render-Schleifen. Aufrufen Sie sie setChannel / getChannel nur aus Benutzeraktionen aus und setzen Sie sie defaultChannel in capacitor.config.

Hintergrundverweigerungen aufgrund ungültiger nativer Versionsmetadaten.

Was bedeutet es

Die native App-Version in der Konfiguration fehlt oder ist nicht gültig im semver-Format (x.y.z).

Was tun

Einstellung plugins.CapacitorUpdater.version auf gültige Semver, überprüfen Sie es im SemVer-Tester, dann erneut aufbauen und die native App neu installieren

Hintergrundablehnungen, wenn die Kanalrichtlinie eine Plattform, eine Buildart oder eine Gerätekategorie blockiert

Was bedeutet es

Das Gerät läuft unter iOS, aber iOS-Updates sind für diesen Kanal deaktiviert

Was tun

iOS in der Kanal aktivieren, wenn dies versehentlich geschah, oder iOS-Builds auf einen dedizierten Kanal routen, wenn das Blockieren absichtlich ist.

Was bedeutet das?

Das Gerät läuft unter Android, aber Android-Updates sind für diesen Kanal deaktiviert.

Was tun?

Android in der Kanal aktivieren, wenn dies versehentlich geschah, oder Android-Builds auf einen dedizierten Kanal routen, wenn das Blockieren absichtlich ist.

Was bedeutet das?

Das Gerät läuft unter Electron, aber Electron-Updates sind für diesen Kanal deaktiviert.

Was tun?

Electron in der Kanal aktivieren, wenn dies versehentlich geschah, oder Electron-Builds auf einen dedizierten Kanal routen, wenn das Blockieren absichtlich ist.

Was bedeutet es

Das Gerät ist ein Entwicklungsbuild, aber Entwicklungsbuilds sind für diesen Kanal blockiert.

Was tun

Entwicklungsbuilds in einem Testkanal zulassen oder diesen Kanal nur auf Releases beschränken und Entwicklungsgeräte anderswohin umstellen.

Was bedeutet es

Ein Produktionsbuild heißt /updates, aber Produktionsupdates für diesen Kanal blockiert sind.

Was tun

Produktionsupdates im Kanal zulassen, wenn dies versehentlich geschah, oder Produktionsbuilds auf den richtigen Kanal umleiten.

Was bedeutet es

A ein echter Telefon oder Tablet wurde blockiert, weil dieser Kanal echte Geräte blockiert.

Was tun?

Stellen Sie sicher, dass die Aktualisierungen für echte Geräte aktiviert sind, wenn dies versehentlich passiert ist, oder lassen Sie die Einschränkung bestehen und leiten Sie echte Geräte in einen anderen Kanal um.

Was bedeutet das?

Das Gerät ist ein Emulator, aber Emulator-Aktualisierungen sind für diesen Kanal deaktiviert.

Was tun?

Stellen Sie sicher, dass die Emulator-Aktualisierungen in einem Testkanal aktiviert sind, oder lassen Sie diesen Kanal weiterhin auf Emulatoren blockiert und verwenden Sie einen anderen Kanal für die Emulator-Validierung.

Automatische Aktualisierungs-Kompatibilitätsregeln

Sektion mit dem Titel “Auto-update compatibility rules”

Hintergrund-Verweigerungen, wenn semver- oder Metadaten-Regeln die Ziel-Paket-aktualisierung blockieren.

Was bedeutet es

Die automatische Aktualisierung ist durch die Kanal-Kompatibilitätsrichtlinie deaktiviert. Die Metadaten enthalten auto_update mit einer passenden Regel wie major, minor, patch, metadata, oder none.

Was tun

Ändern Sie die Kanal-Aktualisierungsrichtlinie, um Ihre geplante Rollout-Strategie zuzulassen.

Was bedeutet es

Der Kanal hat ein Paket, das älter ist als das Geräte-Grundlage und verhindert die Übermittlung von Updates unter der nativen Version.

Was tun

Veröffentlichen Sie ein Paket bei oder über der nativen Grundlage, oder deaktivieren Sie die unter-nativen Schutzfunktion im Kanal.

What bedeutet es

Der Kanal erfordert min_update_version, aber die Geräte-native Version liegt unter diesem Schwellenwert.

Was tun

Setze min_update_version auf dem Zielbundle oder Release aus einer neueren native Version.

Was bedeutet es

Der Kanal blockiert Sprünge auf Hauptversionen, zum Beispiel 1.x.x zu 2.x.x.

context: Live Updates Produktseite. Rolle: Kurze UI-Bezeichnung oder Navigationspunkt. Nachrichtenschlüssel `live_update_dynamic_label_to` (Live Update Dynamic Label To).

Was tun Sie müssen sich mit Ihrer Hauptveröffentlichungsplan ausrichten oder erlauben Sie Sprünge auf Hauptversionen für diesen Track. Siehe Common Update Problems.

disableAutoUpdateToMinor

Sektion: "disableAutoUpdateToMinor"

Was bedeutet das

Der Kanal blockiert Sprünge auf die nächste Minor-Version im Vergleich zum Geräte-Standard (version_build), zum Beispiel 1.2.3 zu 1.3.0.

Was tun

Passen Sie die Kanalstrategie mit Ihrem Minor-Rollout-Plan an oder lassen Sie für diesen Track Minor-Sprünge zu.

disableAutoUpdateToPatch

Sektion: "disableAutoUpdateToPatch"

Was bedeutet das

Der Kanal blockiert Änderungen auf Patch-Ebene, während die gleiche Präfix-Nummer beibehalten wird; nur Änderungen auf der Suffix-Ebene sind erlaubt. MAJOR.MINOR.PATCH zu

Was tun

Die Veröffentlichungszyklus mit der Kanalpolitik abstimmen oder für diesen Track Patch-Sprünge zulassen.

Hintergrundabnahmen aufgrund fehlender oder inkompatibler Kanalkonfiguration.

Was bedeutet das

Das Gerät versuchte, sich mit einem privaten Kanal zu verbinden, der Gerätselfzuteilung nicht zulässt ("ist false") und der Kanal ist nicht öffentlich.allow_device_self_set Was tun

Aktivieren

auf dem Kanal oder das Gerät auf einen öffentlichen oder zulässigen Kanal umschalten. allow_device_self_set Aktivieren

Was bedeutet das

Der Kanal verwendet disable_auto_update: "version_number" aber das Bundle min_update_version ist null, also kann Capgo nicht entscheiden, welche Geräte aktualisiert werden sollen.

Was tun

Füllen Sie die fehlende Konfiguration für diese Regel oder wechseln Sie zu einem einfacheren Auto-Update-Modus.

Was bedeutet das

Kein Standardkanal ist konfiguriert und das Gerät hat keinen Kanal-Übertrag.

Was tun

Setzen Sie einen Standardkanal im Dashboard oder konfigurieren Sie defaultChannel im Bau.

Bundle-Lieferung und -Verschlüsselung

Abschnitt: "Bundle-Lieferung und -Verschlüsselung"

Hintergrundabnahmen, wenn Capgo die Bundle nicht bereitstellen oder entschlüsseln kann.

Was bedeutet das?

Capgo konnte keine gültige signierte Download-URL generieren und kein Manifest-Fallback war verfügbar.

Was tun?

Das Bundle erneut hochladen, Manifeste neu generieren und R2- oder öffentliche Bundle-Einstellungen überprüfen.

Was bedeutet das?

Das dem Kanal zugewiesene Bundle enthält keine herunterladbaren Inhalte: keine external_url, nein r2_path, kein inbauerischer Version, und keine Manifest-Einträge.

Was tun

Rebuild und die Version erneut hochladen, dann bestätigen, dass das Bundle echte Dateien enthält.

Was es bedeutet

Die öffentliche Verschlüsselungsschlüssel des Geräts entspricht nicht dem Schlüssel, der zum Verschlüsseln des Bundles verwendet wurde. Die Metadaten können device_key_id, bundle_key_id, und version.

Was tun

Geräte- und Bundle-Schlüssel-IDs im Konsole vergleichen. Veröffentlichen Sie mit demselben Schlüssel und den übereinstimmenden CLI/Plugin-Versionen.

Hintergrundverweigerungen aufgrund der Anwendungs-Konfiguration oder nicht unterstützter Updater-Versionen.

Was bedeutet

Die App hat ein benutzerdefiniertes Geräte-ID gesendet, aber diese App akzeptiert keine benutzerdefinierten IDs, daher wird die ID ignoriert.

Was tun

Die Sendung von benutzerdefinierten IDs stoppen oder nur dann benutzerdefinierte IDs aktivieren, wenn Ihr Workflow sie erfordert.

Was bedeutet

server.url ist in Capacitor Konfiguration gesetzt, daher lädt der WebView eine remote URL anstatt lokaler Bundle-Dateien. Capgo Live-Updates erfordern lokale Dateien und server.url ist in der Produktion nicht empfohlen.

Was tun

Entfernen oder löschen server.url zur Produktionsausführung und behalten Sie die Update-Payloads lokal. Dieser code kann als Backend-Verweigerung oder als Geräteseitenevent erscheinen.

Was bedeutet es

Der Updater-Plugin ist v4, was das Backend nicht mehr akzeptiert.

Was tun Sie

Das Plugin und CLI auf v5+ (vorzugsweise v8) aktualisieren, mit Capacitor v5+ neu erstellen und das Bundle-Metadaten neu veröffentlichen.

Geräteseitenevents für den normalen Update-Flow, die Aktivierung und den Rollover.

Was bedeutet es

Werden intern zum Überprüfen des Statistikpipeline verwendet.

Was bedeutet es

Capgo hat dem Gerät Informationen über eine neue Version zum Herunterladen gesendet.

Was bedeutet es

Ein Bundle wurde auf dem Gerät aktiviert.

Was bedeutet es

Was tun

Überprüfen Sie die native Logs mit

und überprüfen Sie die Integrität, Pfade und npx @capgo/cli@latest app debug des Bundles notifyAppReady Fluss.

Was bedeutet es

Das Gerät wurde auf die eingebaute Bundle zurückgesetzt.

Was bedeutet es

Ein Bundle wurde auf dem Gerät gelöscht.

Abschnitt mit dem Titel “Herunterladen und Installieren fehlschlagen”

Geräteseitige Ereignisse für den Download-Progress, Archiv-Validierung und Installationsfehler.

Abschnitt mit dem Titel “Herunterladen_0”

download_0

Was bedeutet es

Abschnitt mit dem Titel “Herunterladen und Installieren fehlschlagen”

Der Download-Prozess begann bei 0% Fortschritt.

Was bedeutet das?

Ein neuer Bundle wurde heruntergeladen — Fortschritt angezeigt bei 10%.

Was bedeutet das?

Ein neuer Bundle wurde heruntergeladen — Fortschritt angezeigt bei 20%.

Was bedeutet das?

Ein neuer Bundle wurde heruntergeladen — Fortschritt angezeigt bei 30%.

Was bedeutet das?

A neue Bundle wurde heruntergeladen — Fortschritt angezeigt bei 40%.

Was bedeutet das?

A neue Bundle wurde heruntergeladen — Fortschritt angezeigt bei 50%.

Was bedeutet das?

A neue Bundle wurde heruntergeladen — Fortschritt angezeigt bei 60%.

Was bedeutet das?

A neue Bundle wurde heruntergeladen — Fortschritt angezeigt bei 70%.

Was bedeutet das?

Ein neuer Bundle wurde heruntergeladen — Fortschritt angezeigt bei 80%.

Was bedeutet das

Ein neuer Bundle wurde heruntergeladen — Fortschritt angezeigt bei 90%.

Was bedeutet das

Der Bundle-Download war erfolgreich abgeschlossen.

Was bedeutet das

Das Gerät begann, das Update-Manifest herunterzuladen.

Was bedeutet das

Das Gerät hat das Update-Manifest heruntergeladen.

Was bedeutet das?

Das Gerät hat das Bundle-Archiv heruntergeladen.

Was bedeutet das?

Das Gerät hat das Bundle-Archiv heruntergeladen.

Was bedeutet das?

Eines der Manifest-Einträge konnte nicht heruntergeladen werden. version_name wird verwendet version:fileName um den Asset zu identifizieren.

Was tun

Der fehlende oder blockierte Asset muss korrigiert, der Manifest muss neu generiert und das Bundle neu hochgeladen werden.

Was bedeutet das

Ein Manifest-Datei hat die Prüfsummenvalidierung nicht bestanden.

Was tun

Das Bundle mit der aktuellen CLI Version neu hochladen und die Manifest-Prüfsummen überprüfen.

Was bedeutet das

Ein Manifest-Datei ist bei der Brotli-Entschlüsselung gescheitert.

Was tun

Die Komprimierungseinstellungen überprüfen und die betroffenen Assets neu hochladen.

Was bedeutet es

Der Bundle konnte nicht heruntergeladen werden.

Was tun

Überprüfe die Netzwerkverbindung, die Ablaufzeit der signierten URL, die Erreichbarkeit des Content Delivery Networks (CDN) und die Speicherung des Geräts.

Was bedeutet es

Der Bundle wurde installiert, aber die App rief nie notifyAppReady, also Capgo wurde zurückgerollt.

Was tun

Rufe nach deiner App nach dem Bootstrapping auf. notifyAppReady() nach deiner App nach dem Bootstrapping auf. notifyAppReady was not called, roll back current bundle mappiert sich auf diesen code.

Was bedeutet das?

Der heruntergeladene Bundle hat die Prüfsummenvalidierung nicht bestanden. Häufige Ursachen: CRC32 vs SHA256-Mismatch aus einem alten CLI-Upload oder Verschlüsselungsschlüssel-Mismatch bei älteren Plugins, die Verschlüsselungsfehler als Prüfsummenfehler darstellen.

Was tun?

Neu hochladen mit einem aktuellen CLI/Plugin (SHA256). Wenn Verschlüsselung verwendet wird, überprüfen Sie, ob die App-Publiksschlüssel mit dem Upload-Schlüssel übereinstimmen, oder aktualisieren Sie auf Plugin 8.3.0+ für explizite keyMismatch Abschnitt mit dem Titel “decrypt_fail”

decrypt_fail

Was bedeutet das?

Der heruntergeladene Bundle ist nicht entschlüsselt worden.

Was tun?

Überprüfen Sie die Verschlüsselungsschlüssel und laden Sie den Bundle erneut mit dem passenden Schlüsselpaar hoch.

Verify encryption keys and re-upload the bundle with the matching key pair.

Was bedeutet das

Die Zip enthält illegale Windows-Pfade.

Was tun

Erstelle das Bundle auf Unix-Pfaden oder säubere die Archivpfade vor dem Upload.

Was bedeutet das

Pfade innerhalb der Zip sind nicht kanonisch.

Was tun

Behebe die Pfadgenerierung im Archiv vor dem Upload.

Was bedeutet das

Wie der Zip-Ordner ungültige Verzeichnispfade enthält.

Was tun?

Stellen Sie die Archivstruktur vor dem Upload sicher.

Was bedeutet das?

Das Gerät ist beim Entpacken des heruntergeladenen Pakets gescheitert.

Was tun?

Überprüfen Sie die Integrität des Archivs und unterstützte Komprimierung.

Was bedeutet das?

Der Download ist fehlgeschlagen, weil das Gerät keinen Speicherplatz mehr hatte.

Was tun?

Verringern Sie die Größe des Pakets oder versuchen Sie es auf einem Gerät mit mehr freiem Speicherplatz.

Geräteseitige Fehler, Speicher- und WebView-Diagnosen. Inspektorische Überprüfung der Metadaten-JSON im Dashboard ist immer erforderlich.

Was bedeutet das?

Das App-Programm wurde in den Hintergrund geschoben.

Was bedeutet das?

Das App-Programm wurde in den Vordergrund geschoben.

Was bedeutet das?

JavaScript oder Capacitor Layer abstürzt. Die Metadaten können eine Nachricht, einen Stapel, eine Quelle und den aktiven Bundle-Kontext enthalten.

Was tun

Überprüfen Sie die Metadaten und die native Logs. Kombinieren Sie die Fehlerberichterstattung von JS und native (z.B. Sentry) um den fehlerhaften code Pfad zu finden.

Was bedeutet es

Native Plattform abstürzt. Die Metadaten können eine Plattform, einen Grund, einen Stapel und Details zum Prozess enthalten.

Was tun

Verwenden Sie Xcode oder Logcat-Crash-Logs und korrelieren Sie sie mit dem aktiven Bundle aus den Metadaten.

Was bedeutet es

Android-Anwendung nicht reagiert (ANR).

Was tun

Überprüfen Sie die ANR-Protokolle in Logcat und reduzieren Sie die Blockierung der Hauptthread nach Updates.

Was bedeutet es

Der Betriebssystem hat das App nach Druck auf die Speicherfläche getötet.

Was tun

Reduzieren Sie den Speicherbedarf nach Aktivierung des Updates und überprüfen Sie die Metadaten für verfügbare Speichersignale.

Was bedeutet es

Das Betriebssystem hat die App wegen übermäßiger Ressourcenverwendung getötet.

Was tun

Überprüfen Sie die Metadaten für den Ressourcentyp oder die Plattformgründe.

Was bedeutet es

Der Updater oder der Startvorgang ist vor der normalen Laufzeit fehlgeschlagen.

Was tun

Überprüfen Sie die Metadaten für den fehlgeschlagenen Schritt und die Fehlermeldung.

Was bedeutet es

iOS-Memory-Warnung.

Was tun

Überprüfen Sie den Speicherzustand in den Metadaten und reduzieren Sie die Spitzenlast nach Updates.

Was bedeutet es

Unbehandelter JavaScript-Fehler im WebView. Die Metadaten können eine Meldung, eine Quell-URL, eine Zeile, eine Spalte und einen Stapel enthalten.

Was tun

Installieren Sie die Fehlerberichterstellung in JS- und native Layers, um die genaue fehlgeschlagene Zeile in der Produktion zu erfassen.

Was bedeutet es

Eine unbehandelte Promise-Ablehnung im WebView.

Was tun

Fehler bei asynchronen Vorgängen mit JS- und native Fehlerberichterstellung erfassen.

Was bedeutet es

Ein WebView-Ressourcen-Loadvorgang ist fehlgeschlagen.

Was tun

Verwenden Sie die Metadaten-URL und die Statusdetails, um beschädigte Assets oder Netzwerkregeln zu beheben.

Was bedeutet es

Der Inhaltssicherheitspolizist blockierte einen Ressourcen.

Was tun

Anpassen Sie den CSP mithilfe der Metadaten-Direktive und den Details der blockierten URI.

Was bedeutet es

Die vorherige WebView-Sitzung schloss sich nicht sauber ab, was auf Crash-Schleifen nach einem Update hindeuten kann.

Was tun

Korrelieren Sie mit Crash- und WebView-Fehlerereignissen vor und nach dem Neustart.

Was bedeutet es

Android WebView Renderer-Prozess beendet.

Was tun

Überprüfen Sie die Crashsignale im Metadaten- und Native-Log.

Was bedeutet das

iOS WebView-Inhaltprozess beendet.

Was tun

Überprüfen Sie die aktuelle Bundle und die Seite-URL aus den Metadaten.

Geräteseitige Kontextereignisse, die helfen, das Updateverhalten mit dem Betriebssystem, der nativen Version oder den Kanaländerungen zu korrelieren.

Was bedeutet es

Die Geräte-OS-Version wurde zwischen den Überprüfungen geändert.

Was bedeutet es

Die native App-Store-Version wurde geändert, wodurch native und Web-Bundle-Änderungen getrennt werden können.

Was bedeutet es

Das Gerät hat seine aktuelle Kanalabfrage durchgeführt.

Was bedeutet es

Ein Kanal wurde erfolgreich für das Gerät gesetzt.

Was bedeutet es

Die App wurde uninstalliert oder Capgo Daten wurden gelöscht.

  • SUCCESS: Bundle installieren abgeschlossen
  • ERROR: Installieren oder herunterladen fehlgeschlagen
  • PENDING: Herunterladen abgeschlossen, Freigabe wartet
  • DELETED: Bundle wurde gelöscht, aber noch für Statistiken angezeigt
  • DOWNLOADING: Aktuell wird ein Bundle heruntergeladen

Für Capgo-Cloud-Nutzer gibt es einen Fehlertreiber.

Terminal-Fenster
npx @capgo/cli@latest app debug

Mit diesem können Sie alle Ereignisse im App überprüfen und eine Lösung finden, wenn Updates nicht erfolgen.

Um Ihre Protokolle in Xcode zu finden

Um Ihre Protokolle in Android Studio zu finden

  • Failed to download from entspricht download_fail
  • notifyAppReady was not called, roll back current bundle entspricht update_fail

Um auf iOS zu debuggen, müssen Sie das App-Programm auf Ihrem Computer auswerten, Sie können es wie folgt tun:

Xcode verfügt über eine eingebaute Funktion zum Inspektorieren des Dateisystems von Entwickler-Installations-Apps auf einem iOS-Gerät. Xcode-Menü mit Optionen für Geräte und Simulator

To erzielen Sie dies:

  • Verbinden Sie Ihr Gerät mit Ihrem Mac und wählen Sie in der Xcode-Menüleiste Fenster > Geräte.
  • Wählen Sie Ihr Gerät in der linken Spalte unter der Geräte-Sektion.
  • Dies zeigt eine Liste der von Entwicklern installierten Apps für das Gerät an.
  • Wählen Sie die App, die Sie untersuchen möchten, und wählen Sie dann das 3-Punkte-Symbol in der unteren Ecke des Bildschirms aus.
  • Hier können Sie das aktuelle Dateisystem anzeigen, indem Sie eine Snapshot-Datei herunterladen.

Xcode-Geräte-Panel mit Option zum Herunterladen des App-Containers

Wenn Sie "Download Container…" auswählen, wird ein Snapshot des Dateisystems heruntergeladen und als .xcappdata-Datei exportiert, die Sie durchblättern können.

Heruntergeladene xcappdata-Datei mit Kontextmenü "Ordnerinhalt anzeigen"

Klicken Sie mit der rechten Maustaste auf diese Datei und wählen Sie "Ordnerinhalt anzeigen", um den Ordner zu öffnen.

Öffnen Sie den App-Daten-Ordner, und Sie sollten nun einige Ordner wie Dokumente, Bibliothek, tmp usw. sehen.

iOS-App-Container-Ordnerstruktur mit Dokumente- und Bibliothek-Ordner

Dann finden Sie eine Version in 2 Ordner:

library/NoCloud/ionic_built_snapshots ist nach dem App-Neustart erforderlich

und documents/versions für Hot-Reload

Um auf Android zu debuggen, müssen Sie das Gerät von Android Studio aus zugreifen:

  • Klicken Sie auf Ansicht > Werkzeuge > Geräte-Datei-Explorer oder klicken Sie auf den Geräte-Datei-Explorer-Button in der Werkzeugleiste, um den Geräte-Datei-Explorer zu öffnen.
  • Wählen Sie ein Gerät aus der Dropdown-Liste.
  • Öffnen Sie den Pfad data/data/APP_NAME/ wo APP_NAME ist Ihre App-ID.

Android Studio Device File Explorer zeigt Datenordner der App

Dann finden Sie das versions Ordner, um alle Versionen zu sehen

If Sie native Plugins verwenden Debugging um native Plugin-Arbeit zu planen, verbinden Sie es mit Verwenden Sie @capgo/capacitor-Updater zur native Fähigkeit in Verwenden Sie @capgo/capacitor-Updater Capgo Plugin-Verzeichnis zur Produktworkflow in Capgo Plugin-Verzeichnis Capacitor Plugins von Capgo zur Implementierungsdetail in Capacitor Plugins von Capgo Hinzufügen oder Aktualisieren von Plugins zur Implementierungsdetail in Hinzufügen oder Aktualisieren von Plugins, und Ionische Enterprise-Plugin-Alternativen für das Produktworkflow in Ionic Enterprise Plugin Alternativen.