Zum Hauptinhalt springen

Versionierung in Capacitor-Anwendungen

Erwerben Sie die Grundlagen der Versionierung in Capacitor-Anwendungen, einschließlich besten Praktiken für Updates, Synchronisierung und Automatisierung.

Versionierung in Capacitor-Anwendungen

Die Versionsmarkierung ist für die Verwaltung von Capacitor Apps unerlässlich. Sie sichert glatte Updates, verfolgt Änderungen und verbessert die Zuverlässigkeit von Apps auf iOS, Android und Web-Plattformen. Hier ist eine kurze Übersicht:

  • Weshalb es wichtig ist: Erfasst Updates, ermöglicht Rollbacks und sichert stabile Bereitstellungen.
  • Semantische Versionsnummerierung: Verwende MAJOR.MINOR.PATCH um Bruchänderungen, neue Funktionen oder Bugfixes anzuzeigen.
  • Über die Plattformen synchronisieren: Passen die Versionsnummern in package.json, iOS Info.plistund Android build.gradle.
  • Automatisierung: Updates automatisieren mit npm-Skripten und CI/CD-Tools.
  • Live-UpdatesSeite/ Bereich: Startseite Problem/Lösungsabschnitt. Rolle: Abschnitts- oder Seitenüberschrift. Gesehen in: Seite premium-support.astro. Nachrichtenschlüssel `ps_help_updates_title` (Ps Hilfe Updates Titel). Capgo __CAPGO_KEEP_0__
  • Seite/Bereich: Capgo-Marketing-Website. Rolle: Website-Text. Gesehen in: Seite contributing.astro. Produkt- und Markenbezeichnung Capgo sowie Entwicklertitel genau beibehalten.Updates innerhalb von 24 Stunden an 95% der Nutzer liefern.

Betaversionen

: Verwenden Sie strukturierte Kanäle für Alpha-, Beta- und Produktionsversionen. Zweck Beispiel
Semantische Versionsnummerierung Änderungen klar verfolgt 1.2.3 → 2.0.0
Synchronisiere Versionen Übereinstimmung über Plattformen npx cap sync
Automatisierung Beschleunigt Versionsupdates npm version patch
Live-Updates Schnelle Nutzerakzeptanz Capgo’s 95% in 24 Stunden
Testkanäle Kontrollierte Testphasen 1.3.0-beta.1

Die Versionsmarkierung vereinfacht Anwendungsaktualisierungen, hält die Benutzer glücklich und stellt sicher, dass Entwickler die Veröffentlichungen effektiv verwalten können.

Wie Sie Ihre Capacitor Projekt automatisch konfigurieren

Capacitor Framework Documentation Website

Version Setup in Capacitor

Follow these steps to ensure consistent version management across all platforms in your Capacitor app.

Die Versionsnummer in package.json

Die package.json Das Datei dient als Hauptquelle für die Versionsdetails Ihrer App. Hier ist ein Beispiel, wie Sie es einrichten können:

{
  "name": "your-app-name",
  "version": "1.2.3",
  "private": true,
  "dependencies": {
    "@capacitor/core": "5.5.0",
    "@capacitor/ios": "5.5.0",
    "@capacitor/android": "5.5.0"
  }
}

Wenn Sie die Versionsnummer aktualisieren, verwenden Sie die Regeln für semantische Versionsierung (SemVer):

  • Hauptversion (1.x.x): Einführt wichtige Änderungen.
  • Minorversion (x.2.x): Fügt neue Funktionen hinzu, die rückwärts kompatibel sind.
  • Patchversion (x.x.3): Behebt Fehler oder macht kleine Verbesserungen.

Versionsnummern auf allen Plattformen synchron halten

Es ist wichtig, dass Sie die Versionsnummern auf allen Plattformen abstimmen, um eine glatte App-Veröffentlichung zu gewährleisten. Jede Plattform hat ihre eigene Konfigurationsdatei für die Versionsverwaltung:

Plattform Konfigurationsdatei Versions Schlüssel
iOS Info.plist CFBundleShortVersionString
Android build.gradle versionName
Web package.json version

Nachdem Sie die Version in package.jsonVerwenden Sie diesen Befehl, um die Änderungen mit den native Plattform-Konfigurationen zu synchronisieren:

npx cap sync

Verwendung von Capacitor CLI für die Versionsverwaltung

Die Capacitor CLI bietet hilfreiche Befehle zur Verwaltung von Versionen:

# Check the current version of Capacitor
npx cap --version

# Update Capacitor core and platform dependencies
npm install @capacitor/core@latest
npm install @capacitor/ios@latest
npm install @capacitor/android@latest

# Sync version changes to native platforms
npx cap sync

Das Aktualisieren Ihres Capacitor CLI sichert die Kompatibilität mit versionsspezifischen Funktionen und reduziert potenzielle Inkonsistenzen. Durch die Befolgung dieser Schritte können Sie eine ordnungsgemäße Versionsverwaltung in Ihrem App sicherstellen.

Semantische Versionsverwaltung

Semantische Versionsverwaltung (SemVer)

Verwendet die Formatierung MAJOR.MINOR.PATCH wo jeder Teil einen bestimmten Typ von Änderung anzeigt:Versionskomponente

Zweck context
MAJOR Einführt wichtige Änderungen in der API
MINOR Fügt neue Funktionen hinzu, die mit vorherigen Versionen kompatibel bleiben
PATCH Behebt Fehler oder verbessert die Leistung ohne die Kompatibilität zu brechen

Dieses System ermöglicht es Entwicklern, Updates klar zu kommunizieren, während die Kompatibilität zwischen App-Versionen erhalten bleibt. Zum Beispiel bedeutet der Wechsel von 1.2.3 bis 2.0.0 context:Seite/ Bereich: Produktseite für Live-Updates. Rolle: Kurzer Benutzeroberflächentext oder Navigationspunkt. Nachrichtenschlüssel `live_update_dynamic_label_to` (Live-Update-Dynamischer-Label-Zu).

zeigt wichtige, bruchbare Updates an, die sorgfältige Planung erfordern.

Wann Versionsnummern aktualisieren

Hier erfahren Sie, wie Sie entscheiden, welche Versionsnummer aktualisiert werden soll: When zu verwenden Beispiel für eine Versionsänderung
Hauptaktualisierung For breaking API changes or major UI redesigns 1.2.3 → 2.0.0
Kleine Aktualisierung Wenn neue Funktionen eingeführt oder Funktionen als veraltet markiert werden 1.2.3 → 1.3.0
Patch-Aktualisierung Für Fehlerbehebungen oder kleine Leistungsverbesserungen 1.2.3 → 1.2.4

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

Kommen wir nun auf die Automatisierung dieser Updates zu, um die Veröffentlichungsverwaltung zu vereinfachen.

Versionsaktualisierung

Automatisierung von Versionsaktualisierungen Kann Zeit sparen und Fehler reduzieren in Ihrem Capacitor Projekt. Hier erfahren Sie, wie Sie es einrichten:

  1. NPM Versionsskripte

Fügen Sie diese Skripte Ihrem package.json Datei hinzu, um Versionen leicht zu verwalten:

{
  "scripts": {
    "version:patch": "npm version patch",
    "version:minor": "npm version minor",
    "version:major": "npm version major"
  }
}
  1. CI/CD-Integration
    Incorporate version updates into your CI/CD pipeline. Capgo supports tools like Integrieren Sie Versionen in Ihren CI/CD-Pipeline. GitHub unterstützt Tools wie , __CAPGO_KEEP_0__ AktionenGitLab CI , und Jenkins

“@Capgo is a must-have tool for developers seeking productivity by bypassing lengthy bugfix reviews.” - Bessie Cooper [1]

Versionierungsmethoden

Git-Version-Tags

Git-Version-Tags sind eine zuverlässige Möglichkeit, um die Veröffentlichungen von Capacitor-Apps zu verfolgen. Um klare und informative Tags zu erstellen, kombinieren Sie die semantische Versionierung mit einer kurzen Beschreibung:

git tag -a v1.2.3 -m "Release v1.2.3: Added offline mode support"

Um eine konsistente Tagging-Formatierung innerhalb Ihres Teams zu gewährleisten:

Tag-Komponente Format Beispiel
Release-Version v[MAJOR].[MINOR].[PATCH] v1.2.3
Vorabversion v[VERSION]-beta.[NUMBER] v1.2.3-beta.1
Release Candidate v[VERSION]-rc.[NUMBER] v1.2.3-rc.2

Integration von Buildnummern

Buildnummern helfen dabei, einzelne Builds innerhalb jeder Version zu verfolgen. Für beide iOS und Android sollte die Buildnummer mit jeder Einreichung erhöht werden:

{
  "ios": {
    "version": "1.2.3",
    "build": "10234"
  },
  "android": {
    "version": "1.2.3",
    "versionCode": "10234"
  }
}

Die Buildnummer sollte immer erhöht werden, selbst wenn die Version gleich bleibt. Dies stellt sicher, dass jede Einreichung in den App-Stores eindeutig identifiziert wird, während die Versionsnummerierung für die Benutzer klar bleibt.

Verwaltung von Beta-Versionen

Die Verwaltung von Beta-Versionen erfordert einen strukturierten Prozess, um Testbuilds zu verteilen. Capgo’s kanal-System vereinfacht dies mit den folgenden Schritten:

  1. Kanal-Einstellung

Erstellen Sie separate Kanäle für jede Testphase:

{
  "beta": {
    "version": "1.3.0-beta.1",
    "users": "beta-testers"
  },
  "production": {
    "version": "1.2.3",
    "users": "all"
  }
}
  1. Kontrollieren Sie den Zugriff des Benutzers

Stellen Sie die Berechtigungen ein, um zu kontrollieren, wer Zugriff auf Beta-Versionen erhält. Dies stellt sicher, dass nur genehmigte Tester Beta-Versionen erhalten, während Produktionsbenutzer stabile Releases erhalten.

  1. Versionen fortschreiten

Verwendung eines klaren Versionsfortschritts-Systems, um die Entwicklungsstufen zu verfolgen:

Stufe Versionsformat Zweck
Alpha 1.3.0-alpha.1 Interne Testphase
Beta 1.3.0-beta.1 Gruppe für externe Testphase
RC (Release Candidate) 1.3.0-rc.1 Endgültige Testphase vor der Veröffentlichung
Produktionsbereich 1.3.0 Öffentliche Veröffentlichung

Diese Vorgehensweise sichert eine umfassende Testphase und glatte Übergänge zwischen den Entwicklungsstufen, wobei die Versionsverwaltung organisiert und transparent bleibt.

Anzeige der App-Version

Die Anzeige genauer Versionsinformationen in der App ist entscheidend, um die Benutzer über die neuesten Entwicklungen zu informieren und Updates effektiv zu verwalten.

Version abrufen mit Capacitor

Sie können Versionsdetails mit Capacitor mithilfe dieser code abrufen:

import { App } from '@capacitor/app';

async function getAppInfo() {
  const info = await App.getInfo();
  console.log(`Version: ${info.version}`);
  console.log(`Build: ${info.build}`);
}

Für eine strömungsfähigere Ansicht erstellen Sie eine wiederverwendbare Funktion:

export const getVersionString = async () => {
  const info = await App.getInfo();
  return `v${info.version} (${info.build})`;
};

Diese Funktion vereinfacht den Prozess der Anzeige von Versionsinformationen in der Schnittstelle Ihres Apps.

Version UI-Implementierung

Ein Beispiel dafür, wie Sie die Versionsanzeige in einem Einstellungs-Komponenten integrieren können:

@Component({
  selector: 'app-settings',
  template: `
    <div class="version-info">
      <span>Version: {{ versionString }}</span>
      <span *ngIf="updateAvailable" class="update-badge">
        Update Available
      </span>
    </div>
  `
})

Gemeinsame Orte, an denen Sie Versionsdetails anzeigen können:

Ort Zweck Implementierung
Einstellungs-Bildschirm Vollversion und Build Detaillierte Versionsinformationen
Über Seite Grundlegende Versionsanzeige Versionsnummer nur
Anwendungsfußzeile Minimalanzeige Konsolidierte Versionszeichenfolge

Zusätzlich zur Anzeige der Versionsinformationen kann die Integration eines Update-Prüfungs-Systems die Benutzererfahrung verbessern.

Update-Prüfungs-System

Ein Update-Prüfungs-System stellt sicher, dass Benutzer Zugriff auf die neuesten Funktionen und Korrekturen haben. Capgo bietet Echtzeitbenachrichtigungen und kontrollierte Updatekanäle, um diesen Prozess zu verwalten:

import { CapacitorUpdater } from '@capgo/capacitor-updater';

async function checkForUpdates() {
  const current = await CapacitorUpdater.current();
  const latest = await CapacitorUpdater.getLatest();

  if (current.version !== latest.version) {
    await CapacitorUpdater.download({
      version: latest.version
    });
  }
}

“Wir praktizieren agiles Entwicklung und @Capgo ist mission-kritisch bei der ständigen Lieferung an unsere Benutzer!” - Rodrigo Mantica [1]

Sie können auch eine Benutzerfreundliche Update-Benachrichtigung hinzufügen, wie zum Beispiel:

@Component({
  template: `
    <update-modal 
      [version]="newVersion"
      [features]="updateFeatures"
      (updateNow)="performUpdate()"
    />
  `
})

Für Unternehmen-Apps ermöglicht Capgo's Kanal-System Ihnen, die Verteilung von Updates zu steuern:

Kanal Update-Typ Zielgruppe
Produktion Stabile Versionen Alle Benutzer
Beta Vorabversionen Testgruppe
Kritisch Notfallkorrekturen Beschädigte Benutzer

Mit dieser Methode wird die Anwendungsverlässlichkeit gewährleistet, während die Updateleistung über Capgo’s Analytics-Dashboard verfolgt wird.

Versionen-Management-Lösungen

Lasst uns tiefer in die fortschrittlichen Lösungen für die effektive Verwaltung von Anwendungsversionen eintauchen.

Versionstool-Optionen

Bei der Auswahl von Versionskontrolltools ist es wichtig, sich auf solche zu konzentrieren, die Updates vereinfachen, Ihre code sicherstellen und sowohl App-Store-Veröffentlichungen als auch Live-Updates unterstützen.

Hier sind einige wichtige Funktionen, auf die Sie achten sollten:

Funktion Wichtigkeit Wirkung
Live-Updates Kritisch Verkürzt die durch App-Store-Bewertungen verursachten Wartezeiten
Datenschutz Kernfunktion Sichert die Benutzerdaten und code Integrität
Analyse Wichtig Maßstab für die Erfolgsmessung und die Nutzerakzeptanz
CI/CD-Integration Zweckmäßig Optimiert die Bereitstellungsprozesse
Kostenoptimierung Strategisch Einflüsse auf die langfristige Budgetplanung

Ein hervorragender Werkzeug in diesem Bereich ist Capgo, das Funktionen bietet, die speziell für Capacitor-Anwendungen.

Capgo Versionierungssteuerungsfunktionen

Capgo Live-Update-Dashboard-Oberfläche

Capgo bietet robuste Versionsverwaltungsfunktionen, einschließlich:

  • 23,5 Millionen erfolgreiche Updates geliefert
  • 95% der Nutzer aktualisierten sich innerhalb von 24 Stunden
  • 82% globale Erfolgsrate
  • 434ms average API response time worldwide

Hier ist ein Beispiel, wie Sie Capgo für Versionskontrolle verwenden können:

// Capgo version control example
import { CapacitorUpdater } from '@capgo/capacitor-updater';

const versionControl = {
  async checkVersion() {
    const current = await CapacitorUpdater.current();
    return current.version;
  },

  async deployUpdate(version: string) {
    await CapacitorUpdater.setChannel({
      channel: 'production',
      version: version
    });
  }
};

“Wir probieren gerade @Capgo aus, seit Appcenter den Live-Update-Service für hybride Apps eingestellt hat und @AppFlow viel zu teuer ist.” - Simon Flack [1]

Teamgröße Lösungen

Capgo bietet flexible Tarife, um Teams aller Größen zu unterstützen, und macht die Versionsverwaltung skalierbar und effizient.

Teamgröße Plan Hauptmerkmale
Einzelentwickler Grundlegende Cloud-Hosting Live-Updates, 1.000 MAU
Kleinere Teams (2-5) Maker-Plan 10.000 MAU, 500 GB Bandbreite
Medium Team (6-20) Teamplan 100.000 MAU, permissions
Unternehmen Custom PAYG Unbegrenztes MAU, dedizierte Unterstützung

Für größere Teams ermöglicht Capgo's Kanal-System eine genaue Kontrolle über die Versionen der Bereitstellung:

const enterpriseVersionControl = {
  channels: {
    production: 'stable-releases',
    beta: 'early-access',
    internal: 'development'
  },

  async deployToChannel(channel: string, version: string) {
    await CapacitorUpdater.setChannel({
      channel: channel,
      version: version
    });
  }
};

“Wir praktizieren agiles Entwicklung und @Capgo ist mission-kritisch bei der ständigen Bereitstellung an unsere Benutzer!” - Rodrigo Mantica [1]

Capgo umfasst auch ein Analytics-Dashboard, um die Versionsanpassungsrate zu überwachen und potenzielle Probleme frühzeitig zu erkennen. Mit integrierter Verschlüsselung und anpassbaren Hostingoptionen können Teams Sicherheit bei der Skalierung ihrer Bereitstellungsvorgänge gewährleisten.

Abschluss

Schlüssel-Erkenntnisse

Schlüssel-Erkenntnisse

Versionierung hilft Entwicklern, Updates reibungslos und zuverlässig zu verwalten. Eine ordnungsgemäße Versionskontrolle bietet klare Vorteile:

Vorteil Einfluss Ergebnis
Instant-Updates Kürzere Review-Zeiträume Schnellere Nutzerakzeptanz [1]
Versionsverwaltung Bessere code-Verwaltung Höhere Erfolgsraten [1]
Update-Tracking Echtzeit-Monitoring Faster issue resolution [1]
Verteilungs-Kontrolle Zielgerichtete Bereitstellung Unterstützung für mehrere Plattformen

Diese Ergebnisse unterstreichen die Bedeutung der Verwendung effektiver Werkzeuge zur Versionsverwaltung.

Wie man beginnt

Um diese Vorteile in die Tat umzusetzen, folgen Sie diesen Schritten:

  • Einrichten der Versionsverfolgung: Verwenden Sie semantische Versionsierung in Ihrem package.json Datei und integrieren Sie die erforderlichen Plugins.
  • Hinzufügen von Update-Überprüfungen: Implementieren Sie Systeme, um Versionen zu überprüfen und zu verfolgen.
  • Konfiguration von Verteilungskanälen: Erstellen Sie separate Umgebungen für die Produktion, Beta und Entwicklung.

Zuletzt sollten Sie ein Live-Update-System in Betracht ziehen, um sicherzustellen, dass die Bereitstellungen schnell und sicher sind.

Fortsetzen Sie mit Version Tagging in Capacitor-Anwendungen

Wenn Sie Version Tagging in __CAPGO_KEEP_0__-Anwendungen verwenden Version Tagging in Capacitor-Anwendungen um Rollbacks und Versionskontrolle zu planen, verbinden Sie es mit Rücksetzungen Rücksetzungen Versionziel Kontext: Seite/Bereich: Capgo-Lösungsmarketingseite. Rolle: Abschnitts- oder Seitenüberschrift. Gesehen in: Seite Lösungen/Version-Ziel. Nachrichten Schlüssel `solutions_version_targeting_title` (Lösungen Version-Ziel Titel). | Seite/Bereich: Capgo-Lösungsmarketingseite. Rolle: Kurzer Benutzeroberflächen-Label oder Navigationselement. Gesehen in: Seite Lösungen/Version-Ziel. Nachrichten Schlüssel `solutions_version_targeting` (Lösungen Version-Ziel). Versionziel für die Implementierungsdetails in Versionziel, und zur Implementierungsdetail in Update Behavior, Bundle zur Implementierungsdetail in Bundle und Capgo Live Updates for the product workflow in Capgo Live Updates.

Echtzeit-Updates für Capacitor-Apps

Wenn ein Fehler im Web-Schicht lebt, schicken Sie die Reparatur über Capgo anstatt Tage zu warten, bis die App-Store-Zulassung genehmigt ist. Die Benutzer erhalten das Update im Hintergrund, während native Änderungen im normalen Review-Verfahren bleiben.

Menschliche Unterstützung von Martin

Los geht's jetzt

Neueste von unserem Blog

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