Zum Hauptinhalt springen

Capacitor OTA Updates: Versionierungshinweise

Lernen Sie die besten Praktiken für die Verwaltung von Capacitor OTA-Updates, einschließlich Versionierungstrategien, häufigen Fehlern und Sicherheitsmaßnahmen.

Martin Donadieu

Martin Donadieu

Content-Marketing-Manager

Capacitor OTA Updates: Versionierungshinweise

Möchten Sie App-Updates sofort liefern, ohne auf die Genehmigung der App-Stores warten zu müssen? Capacitor’s Over-the-Air (OTA)-Updates ermöglichen Ihnen das, indem sie Echtzeit-Updates für Ihre App-Webinhalte ermöglichen. Um jedoch eine reibungslose Bereitstellung sicherzustellen, benötigen Sie solide Praktiken für die Versionskontrolle.

Hier erfahren Sie, was Sie in dieser Anleitung lernen werden:

  • Warum OTA-Updates Zeit sparen: App-Store-Verzögerungen umgehen und die Effizienz um bis zu 81%.

  • Versionen verwalten: Verwenden Sie die Semantische Versionsnummerierung (MAJOR.MINOR.PATCH), um Updates effektiv zu verfolgen.

  • Gemeinsame Fehler zu vermeiden: Fehlbauwerke, fehlgeschlagene Konfigurationen und Probleme bei der Update-Verfolgbarkeit.

  • Die besten Werkzeuge für die Aufgabe: Werkzeuge wie capacitor-sync-version-cli und Capgo Simplifizieren Sie die Versionsverwaltung und -verteilung.

  • Update-Strategien: Wählen Sie zwischen teilweisen und vollständigen Updates, schrittweisen Rollouts und optionalen gegenüber verpflichtenden Updates.

Schnell-Tipp: Beginnen Sie mit der Version 0.1.0, erhöhen Sie die MINOR-Version für neue Funktionen und die PATCH-Version für Fehlerbehebungen. Validieren Sie immer Builds und Konfigurationen vor der Veröffentlichung.

Bereit, Ihre CapacitorOTA-Updates zu vereinfachen?

Lassen Sie uns loslegen.

YouTube-Video-Player-Beispiel für OTA-Updates Capacitor

Capacitor Framework Dokumentationswebsite

Die Verwaltung von Capacitor OTA-Updates erfordert eine klare Versionskontrolle. Hier erfahren Sie, wie Sie Stabilität gewährleisten und Updates reibungslos durchführen können.

Grundlagen der semantischen Versionsnummerierung

Die semantische Versionsnummerierung (SemVer) ist eine weit verbreitete Methode zur Versionsnummerierung, die die Struktur MAJOR.MINOR.PATCH verwendet. Jeder Teil hat eine bestimmte Rolle:

VersionskomponenteZweckWann aktualisieren
MAJOR (X)Signalisiert BruchlinienänderungenBei der Einführung von API-Inkompatibilität
Wann MINOR (Y) aktualisierenFügt neue Funktionen hinzuWenn Sie bei der Implementierung von rückwärtskompatibler Funktionalität
PATCH (Z)Behebt FehlerWenn Sie bei der Implementierung von rückwärtskompatiblen Fixes

Apple’s Richtlinien für heruntergeladene code sind beachtenswert:

“Interpretierte code dürfen heruntergeladen werden, um eine Anwendung zu erstellen, aber nur so lange, wie solche code: (a) die Hauptzweck der Anwendung nicht ändern, indem sie Funktionen oder Funktionalitäten bereitstellt, die mit dem vorgesehenen und beworbenen Zweck der Anwendung, wie sie dem App Store zur Verfügung gestellt wurde, unvereinbar sind (b) keine Laden oder einen Laden für andere code oder Anwendungen erstellt (c) keine Signierung, Sandbox oder andere Sicherheitsfunktionen des Betriebssystems umgeht.” [2]

Implementierung der Versionskontrolle

Um Capacitor-OTA-Updates effektiv zu verwalten, können Entwickler Werkzeuge wie capacitor-set-version und capacitor-sync-version-cliverwenden. Diese Werkzeuge vereinfachen die Versionsverwaltung, indem sie Updates automatisieren Über Plattformen hinweg.

Hier erfahren Sie, wie Sie loslegen können:

  • Automatische Versions synchronisierung: Verwenden Sie capacitor-sync-version-cli um die Versionsnummern über allen Plattformen synchron zu halten.

  • Build-Verifizierung: Konfigurieren Sie Überprüfungen, um die Commit-Evidenz vor jeder Build zu bestätigen.

  • Konfigurationsvalidierung: Automatisieren Sie die Validierung von Capacitor-Einstellungen, um Konfigurationsfehler zu vermeiden.

Beginnen Sie bei Version 0.1.0, und erhöhen Sie die Minor-Version-Nummer für jede neue Funktion. Durch die Einhaltung dieser Schritte können Fehler reduziert werden, es gibt jedoch noch häufige Fehler, die vermieden werden sollten.

Häufige Fehler bei der Versionskontrolle

Auch mit guten Praktiken im Einsatz können Fehler auftreten. Werkzeuge wie capsafe können dabei helfen, Probleme auf jeder Plattform zu identifizieren und zu verhindern. Hier sind einige wichtige Punkte zu beachten:

  • Build-Verifizierung: Automatisiere Überprüfungen für Commit-Evidenz-Dateien und sichere die Synchronisierung von Builds auf allen Plattformen.

  • Plattform-spezifische Versionsnummern: Achte auf iOS- und Android-Versionscodes, um Verwechslungen zu vermeiden.

  • Update-Validierung: Bestätige, dass OTA-Updates nicht mit der Kernfunktion der App interferieren.

Für iOS-Builds capsafe sorgt dafür, dass das ios/App/public/commit-evidence.json Datei vorhanden ist. Dieser Schritt ist entscheidend, um veraltete Web-Builds zu vermeiden. [3]Eine ordnungsgemäße Überprüfung sichert zuverlässige Updates und reduziert das Risiko von beschädigten Releases.

Methode zur Verwaltung von OTA-Updates

Die Auswahl der richtigen Liefermethoden, Teststrategien und Updatepolitiken ist für die Verwaltung von Capacitor OTA-Updates entscheidend. Hier ist eine Übersicht der Hauptansätze, um eine glatte und effiziente Aktualisierung sicherzustellen.

Teilweise vs. Vollständige Updates

Die Entscheidung zwischen teilweisen und vollständigen Updates kann sowohl die Anwendungsleistung als auch die Benutzererfahrung beeinflussen. Teilweise Updates konzentrieren sich auf Web-Assets wie JavaScript-Bundles, die sie ideal für schnelle Reparaturen oder kleine UI-Anpassungen machen. Andererseits sind vollständige Updates erforderlich, wenn native code-Änderungen beteiligt sind, da sie die gesamte Anwendungsdatei ersetzen.

Update-TypIdeal fürVorteileDinge, die man beachten sollte
TeilweiseFehlertreiber beheben, UI-AnpassungenKleinere Downloads, schnellere UpdatesBeschränkt auf Webinhalte. Stellen Sie sicher, dass Änderungen mit der ursprünglichen Absicht der App übereinstimmen [2].
VollständigNativ code-UpdatesUmfassende ÄnderungenGrößere Downloads und längere Installationszeiten

Für partielle Updates können Sie den kompilierten App-Bundle aus dist/ oder www/ in das native Dateisystem einfügen, um bestimmte Assets ohne Ersetzung der gesamten App zu aktualisieren

Phasenweise Releases und Tests

Phasenweise Releases ermöglichen Updates allmählich auszuführen, wodurch das Risiko reduziert und Ihnen Zeit gegeben wird, potenzielle Probleme zu erkennen. Mit App Store Connect'sphasieres Veröffentlichungssystem, Updates werden über sieben Tage verteilt, wobei ein zunehmender Prozentsatz der Benutzer das Update täglich erhält:

TagProzentsatz der BenutzerEmpfohlene Maßnahmen
1–21–2%Überwachen Sie Fehlerberichte und sammeln Sie Feedback.
3–45–10%Verfolgen Sie Leistungsmetriken.
5–620–50%Bewerten Sie die Benutzerbeteiligung.
7100%Abschließen Sie die Veröffentlichung.

Beispiel: Supercells Januar-Update 2024 für „Clash of Clans“ setzte diese Strategie ein. Während einer 10-prozentigen Veröffentlichungsphase identifizierten sie einen kritischen Fehler und pausierten die Veröffentlichung, um ihn zu beheben, um so weitverbreitete Probleme für ihre globale Zielgruppe zu vermeiden [4].

Verpflichtende vs. Optional Updates

Ein Gleichgewicht zwischen Anwendungs-Funktionalität und Benutzererfahrung ist entscheidend, wenn man sich für verpflichtende oder optional Updates entscheidet. Für kritische Reparaturen kann eine Zwangsumstellung erforderlich sein, aber sie sollte sparsam eingesetzt werden, um die Benutzer nicht zu frustrieren. Das Capacitor SDK bietet Optionen für Update-Modi, einschließlich:

‚Wir empfehlen diese Modus normalerweise nicht, da er dazu führen kann, dass das Splash-Screen lange Zeit angezeigt wird, insbesondere wenn der Benutzer über eine schlechte Netzwerkverbindung ist.’
– Capacitor SDK Einrichtung – Appflow, hinsichtlich Zwangsvorlage

Um während kritischer Workflows wie der Authentifizierung einen glatten Benutzererlebnis zu gewährleisten, sollten Sie Mechanismen zur Blockierung von Updates implementieren. Zum Beispiel:

// Before login  
localStorage.shouldBlockReload = true;

// After successful login  
localStorage.shouldBlockReload = false;

Alternativ ermöglichen Hintergrundaktualisierungen den Benutzern, die aktuelle Version weiter zu nutzen, während die neue Version im Hintergrund heruntergeladen wird.

Diese Strategien bieten eine solide Grundlage für das effektive Management von Updates, während Störungen minimiert werden. Im nächsten Abschnitt werden Update-Politiken und Sicherheitsüberlegungen behandelt.

sbb-itb-f9944d2

Update-Regeln und Sicherheit

OTA-Updates erfordern die Einhaltung von App-Store-Politiken und strengen Sicherheitsprotokollen.

App-Store-Update-Politiken

Apple und Google Play erheben strenge Regeln, um sicherzustellen, dass Apps sicher und von hoher Qualität sind. Zum Beispiel müssen ab dem 31. August 2024 alle neuen Apps und Updates auf Android 14 (API Stufe 34) ausgerichtet sein.[8]Entwickler können bis zum 1. November 2024 eine Verlängerung beantragen, wenn sie mehr Zeit benötigen.

Hier sind einige zeitbasierte Updatekontrollen zu berücksichtigen:

Update-KontrollmethodeBeschreibungVorteile
Verschobene UpdatesVerschiebe Updates um 1–90 Tage nach der VeröffentlichungErmöglicht kontrolliertes Testen und schrittweises Rollout
Versionen-KontrolleBeschließt, welche App-Versionen Updates erhaltenUnterstützt die staged Bereitstellung und -testung
Automatische UpdatesLegt das Updateverhalten auf verwalteten Geräten fest__CAPGO_KEEP_0__

Verwaltung vereinfacht[9]Um Fristen einzuhalten, verwenden Sie Benachrichtigungen des Systems. Forschungen zeigen, dass konsistente, gut geplante Updates die Benutzerbindung um bis zu 200% erhöhen können

. Hinaus über die Einhaltung der App-Store-Regeln ist die Sicherheit in Ihren Updates genauso wichtig

Update-Sicherheitsstandards

Eine starke Versionskontrolle ist für die Aufrechterhaltung der Update-Integrität unerlässlich, aber auch mehrschichtige Sicherheitsmaßnahmen sind gleichermaßen wichtig. Sichern Sie OTA-Updates mit Verschlüsselung, Authentifizierung und Integritätsprüfungen. Dr. James J. Hunt, Gründer, CEO und CTO von aicas, erklärt:[7]

Key security layers include:

Der Bedarf an über die Luft liegenden Updates wird durch die industrielle Digitalisierung für Software und künstliche Intelligenz getrieben – beide erfordern, dass Lösungsanbieter das gesamte DevOps-Zyklus neu überdenken“SchlüsselsicherheitslayerSicherheitslayer
ImplementierungZweckSchützt Update-Pakete während der Übertragung
AuthentifizierungHardware-basierte Sicherheits-SchlüsselBietet eine stärkere Sicherheit als Dateibasierte Schlüssel
IntegritätsprüfungKryptografische SignaturBestätigt die Authentizität des Updates
Rückgängig-MachungsschutzAutomatischer Fallback-MechanismusVerhindert das Bricking des Geräts während fehlgeschlagener Updates

Schritte zur Verbesserung der Update-Sicherheit:

  1. Ermöglicht sichere Verbindungen herzustellen
    Verwenden Sie TLS mit Hostnamen-Verifizierung und CA-gesicherten Zertifikaten, um sicherzustellen, dass Serververbindungen überprüft werden[5].

  2. Schützen Sie Update-Pakete
    Verschlüsseln Sie Updates und fügen Sie digitale Signaturen nach der Verschlüsselung hinzu. Für maximale Sicherheit sollten Sie für die digitale Signierung air-gapped-Systeme verwenden[5][6].

  3. Implementieren Sie Wiederherstellungsmechanismen
    Aktivieren Sie automatische Rollover-Funktionen, um fehlgeschlagene Updates effektiv zu handhaben[6].

Dr. Hunt betont auch die Bedeutung von OTA-Updates in fortschrittlichen Technologien:

“OTA is already a key factor in making autonomous driving systems trustworthy” - Dr. James J. Hunt, founder, CEO, and CTO of aicas[7]

OTA ist bereits ein wichtiger Faktor bei der Gewährleistung der Zuverlässigkeit von autonom fahrenden Systemen

Dr. James J. Hunt, Gründer, CEO und CTO von aicas

Die UNECE hat die UN-Regelungen (UN R155/R156) genehmigt, die ein Rahmenwerk für sichere OTA-Updates in verschiedenen Branchen bereitstellen. Diese Standards sichern Updates ab und machen sie zuverlässig Capacitor appsDie Wahl der richtigen OTA-Update-Software ist mehr als nur ein Sicherheitsmaß - sie ist entscheidend für eine glatte Bereitstellung, eine effektive Versionskontrolle und eine gestreamte Release-Zyklus für __CAPGO_KEEP_0__-Anwendungen. Die richtigen Werkzeuge machen das Management von Updates einfacher und effizienter

Capgo: Plattform für OTA-Updates

Capgo: Plattform für OTA-Updates

Capgo hat geliefert 482,9 Millionen Updates über 1.800 Apps, indem die Veröffentlichungseffizienz um ein beeindruckendes 81% [1]Hier sind die Highlights:

  • Sicherheit: Funktionen wie Ende-zu-Ende-Verschlüsselung und code-Signaturregisterung sichern sicherheitsrelevante Updates.

  • Integration: Funktioniert reibungslos mit CI/CD-Plattformen wie Azure DevOps, GitLab, GitHub, Jenkins, Cloudbees, und Travis.

  • Bereitstellung: Bietet Benutzerzuweisung und Phasenrollouts für präzise, sofortige Verteilungen.

  • Analytics: Integrierte Werkzeuge, um die Updateleistung zu tracken und die Nutzerakzeptanz zu messen.

Ein großartiges Beispiel? Colenso hat erfolgreich nahezu alle seiner 5.000+ Benutzer in nur Minuten [1] erreicht. Wie Rodrigo Mantica mitgeteilt hat:

“Wir praktizieren agiles Entwicklung und @Capgo ist mission-kritisch bei der kontinuierlichen Lieferung an unsere Benutzer!” [1]

Alternative Update-Tools

Während Capgo eine robuste Lösung bietet, bringen andere Tools unterschiedliche Ansätze zur Versionsverwaltung. Hier ist eine schnelle Vergleichsübersicht:

ToolCapgoAppflow
Kostenstruktur~$300/Monat für CI/CD-Kosten$6.000 jährliche Abonnement
UpdatestrategienSchnelle Bereitstellung, BenutzerzuweisungHintergrund, Immer neueste, Zwangsvorlage
IntegrationMehrere CI/CD-PlattformenIntegrierte CI/CD

Ein Benutzer teilte seine Erfahrung:

“Wir probieren gerade @Capgo aus, seit Appcenter live Updates für hybride Apps nicht mehr unterstützt und @AppFlow viel zu teuer ist.” [1]

Wichtige Funktionen, nach denen du suchen solltest

Wenn du ein OTA-Update-Tool auswählst, stelle sicher, dass es folgende Funktionen bietet:

  • End-to-end-Verschlüsselung Um Updates sicher zu halten

  • CI/CD-Integration Um sich mit Ihrem Workflow zu verbinden

  • Benutzerzuweisung Für kontrollierte Rollouts

  • Zulassung für den App-Store Um Verteilungsprobleme zu vermeiden [10]

Die Wahl Ihres OTA-Update-Software kann einen großen Einfluss auf die Effizienz und den Erfolg Ihrer Team-Entwicklung haben. Nehmen Sie sich die Zeit, Ihre Bedürfnisse im Hinblick auf Sicherheit, Versionskontrolle und Zusammenarbeit zu bewerten, um das beste passende Projekt für Ihre Projektanforderungen zu finden.

Zusammenfassung

Balancieren Sie technische Genauigkeit mit Benutzererfahrung, um OTA zu verbessern

Zusammenfassung aktualisierungsverwaltung Effizienz durch 81% [1]. Diese Vorgehensweise unterstützt eine effektive Versionskontrolle und zuverlässige OTA-Deployments.

Hier sind die wichtigsten Punkte, die Sie im Auge behalten sollten, um erfolgreiche OTA-Updates durchzuführen:

  • Sicherheit: Verwenden Sie Ende-zu-Ende-Verschlüsselung und code-Signierungsprüfung, um die Update-Integrität aufrechtzuerhalten [1].

  • Benutzererfahrung: Minimieren Sie Störungen, indem Sie Updates sorgfältig planen und Benutzer während des gesamten Prozesses informieren [11].

  • Kongruenz: Stellen Sie sicher, dass Updates den Anforderungen von Apple und Google entsprechen [1].

Nächste Schritte

Um Ihren OTA-Update-Prozess zu verbessern, sollten Sie diese Maßnahmen in Betracht ziehen:

  1. Wählen Sie die richtigen Werkzeuge
    Wählen Sie Werkzeuge, die Ihren Sicherheitsbedürfnissen, Ihren Zielsetzungen bei der Bereitstellung und Ihrem Budget entsprechen, basierend auf den diskutierten Strategien.

  2. Folgen Sie den besten Praktiken

    “Users might also be reluctant to run an OTA update as it disrupts their familiar and comfortable experience with the app, requiring them to get familiar with the more technical aspects of the product, that they are usually not familiar with.” [11]

  3. Überwachen und verbessern Sie
    Überwachen Sie die Leistung Ihrer Updates und wie sich die Benutzer darauf begeben. Verwenden Sie diese Daten, um Ihren Bereitstellungsansatz im Laufe der Zeit zu optimieren.

Zukünftige OTA-Updates sollten sich zum Ziel setzen, schnelle Bereitstellung mit einer glatten Benutzererfahrung zu kombinieren, um sowohl Effizienz als auch Zufriedenheit zu gewährleisten.

Live-Updates für Capacitor: Apps

Wenn ein Web-Schicht-Bug aktiv ist, liefern Sie die Reparatur über Capgo anstatt Tage zu warten, bis die App-Store-Zulassung vorliegt. Die Benutzer erhalten das Update im Hintergrund, während native Änderungen den normalen Überprüfungsprozess durchlaufen.

Jetzt loslegen

Neuestes aus unserem Blog

Capgo bietet Ihnen die besten Einblicke, die Sie benötigen, um eine wirklich professionelle mobilen App zu erstellen.