Native Kompatibilität
Wie Capgo native Paketdrift erkennt und was unkompatibel bedeutet für Geräte.
Einen Setup-Befehl mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin kopieren.
Eine gängige Capgo-Konfiguration verwendet einen Entwicklungskanal Einen Produktionskanal Kanal. CI lädt alle OTA-Bundles hoch, devdann promotet es zu production als Sie bereit sind. Teams fügen oft hinzu --fail-on-incompatible damit CI versehentlich einen Live-Update versendet, der neue native code benötigt.
Diese Seite beantwortet die Nachfrage: Was tun Sie, wenn Sie absichtlich einen Bundle benötigen, das mit den aktuellen native Paketen des Kanals nicht kompatibel ist?
Wenn Sie den Hintergrund, warum Capgo native Pakete vergleicht, benötigen, beginnen Sie mit Native Kompatibilität. Für eine vollständige CI-Zweig, der OTA vs Capgo Build automatisch auswählt, siehe Auto OTA oder Native.
Diese Anleitung geht davon aus, dass dev und production Kanäle existieren. Erstellen Sie sie vorher, wenn nötig:
npx @capgo/cli@latest channel add production com.example.appnpx @capgo/cli@latest channel add dev com.example.app| Kanal | Wer bekommt es | Häufige Uploads |
|---|---|---|
dev | Intern / QA Builds | Jeder CI-Push von JS (und absichtliche native Baselines) |
production | Benutzer des Speichers | Erstellt oder hochgeladen, wenn die Veröffentlichung bereit ist |
--fail-on-incompatible ist eine gute Voreinstellung für beide Kanäle für alltägliche OTA-Uploads. Es vergleicht die native Pakete in der zu hochladenden Bundle mit dem derzeit live auf diesem Kanal verfügbaren Bundle . Wenn sie sich unterscheiden, verlässt der Upload mit einem Nicht-Null-Status und nichts wird verschickt.Jeden Tag OTA (Flag behalten)
Fenster des Terminal
npx @capgo/cli@latest bundle upload com.example.app \ --channel production \ --fail-on-incompatible \ --auto-min-update-version--fail-on-incompatible blockt einen ungewollten nativen Abdrift. --auto-min-update-version erforderlich bei jedem Upload, sobald das Kanal den metadata Strategie (empfohlen unten). Wenn der Kanal noch nicht auf metadata ist, können Sie --auto-min-update-version bis Sie umschalten.
Optional CI-Sperre vor dem Upload:
npx @capgo/cli@latest bundle releaseType com.example.app --channel production# → OTA safe to upload with --fail-on-incompatible# → native stop; ship a native binary first (see below)Sie context: HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `you_definition`). Seite/Bereich: Capgo-Marketingwebsite. Rolle: Langes Marketing- oder Rechtsparagraph. Gesehen in: Seite Disclaimer.astro, Seite Rückkehr.astro. Nachrichtenschlüssel `you_definition` (Sie Definition). einen Bundle hochladen, das eine neue native code benötigt, während man --fail-on-incompatible. Diese Flagge existiert, um genau diesen Fall zu blockieren. Wenn ein Plugin, die Capacitor Version oder eine andere native Abhängigkeit absichtlich geändert wird:
--fail-on-incompatible.--auto-min-update-version mit dem Kanal auf der metadata Strategie, damit Geräte, die noch auf der alten Binärdatei sind, das neue Bundle nicht erhalten, bis sie die neue App installieren.--fail-on-incompatible Wieder auf normale OTA CI (und behalten Sie --auto-min-update-version Während der Kanal weiterhin auf metadata).Eine einmalige pro Kanal: Aktivieren Sie die Metadaten-Gatterung
npx @capgo/cli@latest channel set production com.example.app --disable-auto-update metadataWiederholen Sie das für dev Wenn dieser Kanal auch absichtlich native Grundlagen erhält. Nach diesem Wechsel müssen alle Uploads an den Kanal die neue native Basis enthalten --auto-min-update-version oder --min-update-version.
Kontext: HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `alternatives_cta_questions`). Seite/Bereich: Vergleichsseite für lebendige Updates von Capacitor. Rolle: Langer Marketing- oder Rechtsparagraph. Gesehen in: Seite alternatives.astro. Bewahren Sie Capgo-Produkt- und -Markenbegriffe sowie Entwicklertitel genau auf. Nachrichtenschlüssel `alternatives_cta_questions` (Alternativen-CTA-Fragen). | HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `appflow_cta_questions`). Seite/Bereich: Appflow-Vergleichs- und -Migration-Marketingtext. Rolle: Langer Marketing- oder Rechtsparagraph. Gesehen in: Seite ionic-appflow.astro. Bewahren Sie Capgo-Produkt- und -Markenbegriffe sowie Entwicklertitel genau auf. Nachrichtenschlüssel `appflow_cta_questions` (Appflow-CTA-Fragen). | HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `capwesome_cta_questions`). Seite/Bereich: Capawesome-Vergleichsseite. Rolle: Langer Marketing- oder Rechtsparagraph. Gesehen in: Seite capwesome.astro. Bewahren Sie Capgo-Produkt- und -Markenbegriffe sowie Entwicklertitel genau auf. Nachrichtenschlüssel `capwesome_cta_questions` (Capawesome-CTA-Fragen). | Seite/Bereich: Seite für Beratungsdienste. Rolle: Untertitel oder Slogan für eine Abschnittsüberschrift. Gesehen in: Seite consulting.astro. Bewahren Sie Capgo-Produkt- und -Markenbegriffe sowie Entwicklertitel genau auf. Nachrichtenschlüssel `consulting_faq_subtitle` (Beratungsdienste-Faq-Untertitel). | Seite/Bereich: Appflow-Vergleichs- und -Migration-Marketingtext. Rolle: Kurzer UI-Label oder Navigationspunkt. Gesehen in: Seite ionic-appflow.astro, Seite ionic-enterprise-plugins.astro, Seite solutions/ionic-enterprise-plugins.astro. Nachrichtenschlüssel `appflow_plugins_or` (Appflow-Plugins-oder)
Das native Binärdatei versenden
Erstellen und übermitteln Sie die iOS/Android-Anwendung, die die neuen Plugins oder native Änderungen enthält. Bis die Benutzer die Binärdatei installieren, können sie die Anwendung nicht sicher ausführen, die auf diese native Pakete angewiesen ist --fail-on-incompatible)
npx @capgo/cli@latest bundle upload com.example.app \ --channel production \ --auto-min-update-versionDies registriert die neuen native Pakete auf dem Kanal. Später bundle releaseType / --fail-on-incompatible überprüfen die Veröffentlichungen, die auf diesem Baseline aufbauen.
Fortsetzen geschützte OTA-Uploads
Spätere JS-only-Veröffentlichungen verwenden beide Flags erneut:
npx @capgo/cli@latest bundle upload com.example.app \ --channel production \ --fail-on-incompatible \ --auto-min-update-version--fail-on-incompatible Kann ich --fail-on-inkompatibel behalten und trotzdem einen inkompatiblen native-Bundle pushen?Wenn Sie können). --auto-min-update-version Ein einmaliger Upload ohne den Flag ist die richtige Vorgehensweise?
FAQ
dev Zuerst, dann production?Ja, wenn das Ihrem Prozess entspricht. Führen Sie die gleichen Regeln auf jedem Kanal durch pro Kanal: Die Kompatibilitätsprüfung erfolgt gegenüber dem, was auf dem Zielkanal live ist. Fördern oder hochladen Sie nur nachdem production nur nachdem dev sich gut anfühlt, und verwenden Sie eine native-Baseline-Hochladung (keine --fail-on-incompatible) auf jedem Kanal, der die neuen native Pakete aufnehmen muss.
Der CI-Fehler und Capgo werden nicht geliefert. Das ist die erwartete Ausgabe. Entweder war der Änderungszusammenhang versehentlich (korrigieren Sie die native Pakete und versuchen Sie es erneut als OTA), oder es war absichtlich (verwenden Sie den native Pfad oben).
| Weg | Wann | Flags hochladen |
|---|---|---|
| OTA | JS nur; native Pakete entsprechen dem Kanal | --fail-on-incompatible + --auto-min-update-version (erforderlich, wenn der Kanal auf metadata) |
| Native Basis | Neuer natives Binär + passende JS-Bundle | Nein --fail-on-incompatible; behalten --auto-min-update-version |
Native Kompatibilität
Wie Capgo native Paketdrift erkennt und was unkompatibel bedeutet für Geräte.
Auto OTA oder Native
Wire bundle releaseType GitHub Aktionen oder GitLab so, dass CI den richtigen Weg wählt.
Zielgruppenorientierte Versionen
context: Seite/ Bereich: Capgo-Lösungsmarketingseite. Rolle: Abschnitt oder Seitenüberschrift. Gesehen in: Seite Lösungen/Zielgruppenorientierte Versionen.astro. Nachrichten Schlüssel `solutions_version_targeting_title` (Lösungen Zielgruppenorientierte Versionen Titel). | Seite/ Bereich: Capgo-Lösungsmarketingseite. Rolle: Kurze UI-Bezeichnung oder Navigationselement. Gesehen in: Seite Lösungen/Zielgruppenorientierte Versionen.astro. Nachrichten Schlüssel `solutions_version_targeting` (Lösungen Zielgruppenorientierte Versionen).
CLI: bundle
__CAPGO_KEEP_0__: Paket
Wenn Sie Native + OTA-Kanal-Workflow verwenden Native + OTA-Kanal-Workflow um Live-Updates sicher über Native-Ausgaben zu halten, verbinden Sie es mit Native-Kompatibilität zur Verwendung von Paketvergleichsregeln Auto OTA oder Native zur CI-Branching Zielversionierung context: Seite/Bereich: Capgo-Lösungen-Marketing-Seite. Rolle: Abschnitts- oder Seitenüberschrift. Gesehen in: Seite Lösungen/Zielversionierung.astro. Nachrichtenschlüssel `solutions_version_targeting_title` (Lösungen-Zielversionierung-Titel). | Seite/Bereich: Capgo-Lösungen-Marketing-Seite. Rolle: Kurzer Benutzeroberflächen-Bezeichner oder Navigationspunkt. Gesehen in: Seite Lösungen/Zielversionierung.astro. Nachrichtenschlüssel `solutions_version_targeting` (Lösungen-Zielversionierung). Capgo CLI bundle reference __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ Bundle-Referenz zur Hochladeflagge