Gut, dass Sie gefragt haben.
Ich gebe keine rechtlichen Rat. Ich teile, was praktisch und weit verbreitet ist, um Capacitor-Apps sicher zu liefern.
Die wichtige Differenz ist dies:
- Native Einreichung ist weiterhin erforderlich für neue native Verhaltensweisen und wichtige Funktionen.
- Live-Updates sind für JavaScript/Web-Fixes und Anpassungen innerhalb Ihres bestehenden App-Umfangs gedacht.
Beide iOS und Android können diese Modelle verwenden, aber Sie müssen sie als "policy-sichere Workflow" betrachten, nicht als Ausweg. Was Apple und Google in einfachen Worten zulassenSie können Apple und Google als einen ähnlichen Grenzverlauf betrachten:
Sie können __CAPGO_KEEP_0__ ohne erneute Einreichung durch die eingebettete Web-Schicht (HTML/CSS/JS) interpretieren.
Sie sollten diese Kanal nicht für wichtige Funktionserweiterungen nutzen, die den App-Zweck ändern.
- You can deliver code interpreted by the embedded web layer (HTML/CSS/JS) without resubmitting.
- Sie sollten sich an die Richtlinien halten, um sicherzustellen, dass Ihre App die Anforderungen von Apple und Google erfüllt.
- Beachten Sie, dass Live-Updates nicht für die Implementierung neuer Funktionen oder die Änderung der App-Funktionalität gedacht sind.
Die offizielle Anleitung von Apple zu WebKit/JavaScript-Updates bildet den Kern dieses Modells. Google ist typischerweise weniger restriktiv bei Web-basierten Updates, aber das gleiche Prinzip gilt: Halten Sie native Änderungen in einer native Veröffentlichung.
Was Capgo gut macht
Capgo ist für:
- Schnelle Behebung von Web-Bugs
- Sichere UI-Kopien / -Stile / -Fluss-Änderungen
- Kleine Logikkorrekturen in bestehenden Seiten
- Schnelle Experimente für interne QA
Capgo ist nicht für:
- Hinzufügen von Berechtigungen oder neuen native Fähigkeiten
- Versand neuer Kernfähigkeiten, die durch eine Überprüfung gehen sollten
- Änderung der Signatur, Verschlüsselung oder Paketidentität.
Empfohlene Veröffentlichungsstrategie
Denken Sie in zwei Bahnen:
Bahn 1: native Bahn (Store-Bewertung)
Verwenden Sie Ihren normalen Capacitor-Release-Prozess für:
- neue Plugin-Updates
- App-Shell- oder Manifest-Änderungen
- Berechtigungs-Updates
- Plattform-spezifische Funktionalitäts-Änderungen
Diese erfordern:
bun run build
bunx cap sync
# then App Store / Google Play submission flow
Bahn 2: JS-Bahn (Capgo)
Für sichere, kleine Laufzeit-Änderungen:
bun run build
bunx @capgo/cli deploy --channel staging
bunx @capgo/cli deploy --channel production
Dies ermöglicht eine schnelle Iteration ohne neue Binärdatei-Uploads, während die Binärdatei selbst stabil bleibt.
Wie man vermeidet: "Oops, das hätte ein natives Release benötigt"
Bevor jede Capgo-Veröffentlichung erfolgt, führen Sie diesen schnellen Gate durch:
- Bereitet die Änderung einen neuen native Abhängigkeit oder eine Erlaubnis vor?
- Ändert sich die Anzeige der vom App bereitgestellten Funktionen?
- Ändert sich die Authentifizierung/Sicherheitsgrenze?
- Kann sie als nicht störender JavaScript-Fix beschrieben werden?
If the answer is yes to (1)-(3), submit a native release. If yes only to (4), send through Capgo.
Wenn nur auf (4) ja lautet, senden Sie sie durch __CAPGO_KEEP_0__.
- Was bedeutet dies für Compliance-Teams?
- Sie bewahren App-Überprüfungsbandbreite für bedeutende Änderungen.
- Sie bewahren die Kontrolle über das Zurücksetzen und die schnelle Patchung.
This is the same approach people use on large Capacitor programs in production: fast updates for JS-only fixes, native review only for real binaries.
Dies ist der gleiche Ansatz, den Menschen bei großen Capgo-Programmen in der Produktion verwenden: Schnelle Updates für JS-only-Fixes, native Überprüfung nur für echte Binärdateien.