Zum Inhalt springen

Getting Started

GitHub

Sie können unsere AI-gestützte Einrichtung verwenden, um den Plugin zu installieren. Fügen Sie die Capgo-Fähigkeiten zu Ihrer KI-Tool mithilfe der folgenden Befehl hinzu:

Terminal-Fenster
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Verwenden Sie dann die folgende Anfrage:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-updater` plugin in my project.

Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und folgen Sie den Plattform-spezifischen Anweisungen unten:

Terminalfenster
bun add @capgo/capacitor-updater
bunx cap sync

Für die meisten Benutzer empfehlen wir die Verwendung der Hauptrichtlinie der Anleitung die sowohl die Plugin-Installation als auch die Capgo-Cloud-Integration abdeckt.

Diese Anleitung konzentriert sich auf die technischen Details des Plugins für fortgeschrittene Benutzer, die die zugrunde liegenden Mechanismen verstehen möchten oder selbst gehostete Updates implementieren möchten.

Das Capacitor-Updater-Plugin ermöglicht über das Internet (OTA) Updates für Ihre Capacitor-Anwendungen. Dies ermöglicht es Ihnen, Updates an Ihre App zu senden, ohne dass diese durch App-Store-Überprüfungen gehen müssen.

  1. Bundle-Download: Die Erweiterung lädt Aktualisierungs-Pakete (ZIP-Dateien, die Ihre Web-Assets enthalten) herunter
  2. Extraktion: Die Pakete werden auf dem Gerätespeicher extrahiert
  3. Hot Reload: Die App wechselt zum neuen Paket, ohne dass ein Neustart erforderlich ist
  4. Rückfall: Wenn eine Aktualisierung fehlschlägt, kehrt die App zur vorherigen funktionierenden Version zurück

Der einfachste Weg, die Erweiterung mit automatischer Aktualisierungsverwaltung zu verwenden:

import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Plugin handles everything automatically
// Configure in capacitor.config.ts

Hinzufügen zu Ihrem capacitor.config.ts:

{
plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground',
updateUrl: 'https://your-update-server.com/api/updates'
}
}
}

Für eine fortgeschrittene Kontrolle über den Updateprozess:

import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Download an update
const bundle = await CapacitorUpdater.download({
url: 'https://your-server.com/updates/v1.0.1.zip',
version: '1.0.1'
});
// Set the bundle (will be used on next app start)
await CapacitorUpdater.set({
id: bundle.id
});
// Or reload immediately
await CapacitorUpdater.reload();

Keine zusätzliche Konfiguration erforderlich. Der Plugin funktioniert direkt aus der Box.

Keine weitere Konfiguration erforderlich. Der Plugin funktioniert direkt aus der Box.

Grundlegende API Verwendung

Abschnitt: Grundlegende API Verwendung

Aktualisierung herunterladen

Abschnitt: Aktualisierung herunterladen
import { CapacitorUpdater } from '@capgo/capacitor-updater';
const bundle = await CapacitorUpdater.download({
url: 'https://example.com/update.zip',
version: '1.0.1'
});
console.log('Downloaded bundle:', bundle.id);
// Set bundle to be used on next app start
await CapacitorUpdater.set({
id: bundle.id
});
// Reload app immediately with new bundle
await CapacitorUpdater.reload();
const { bundles } = await CapacitorUpdater.list();
console.log('Available bundles:', bundles);
await CapacitorUpdater.delete({
id: 'bundle-id'
});
const { bundle } = await CapacitorUpdater.current();
console.log('Current bundle:', bundle.version);

Hören Sie auf Update-Ereignisse:

import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Listen for download progress
CapacitorUpdater.addListener('download', (info) => {
console.log('Download progress:', info.percent);
});
// Listen for download completion
CapacitorUpdater.addListener('downloadComplete', (bundle) => {
console.log('Download complete:', bundle.version);
});
// Listen for update failures
CapacitorUpdater.addListener('updateFailed', (error) => {
console.error('Update failed:', error);
});
// Listen for successful updates
CapacitorUpdater.addListener('updateAvailable', (info) => {
console.log('Update available:', info.version);
});

Konfigurieren Sie das Plugin in Ihrem capacitor.config.ts:

{
plugins: {
CapacitorUpdater: {
// Auto-update settings
autoUpdate: 'atBackground',
updateUrl: 'https://api.example.com/updates',
// Update behavior
resetWhenUpdate: true,
// Version settings
version: '1.0.0',
// Security
allowModifyUrl: false,
// Stats collection
statsUrl: 'https://api.example.com/stats',
// Channel (for Capgo cloud)
defaultChannel: 'production'
}
}
}

Der einfachste Weg, loszulegen:

// Install the Capgo CLI
bun add -g @capgo/cli
// Login to Capgo
npx @capgo/cli login
// Upload your first bundle
npx @capgo/cli bundle upload
// The plugin auto-updates from Capgo cloud

Siehe das Hauptanleitung für den Schnellstart für Details.

Hosten Sie Ihren eigenen Update-Server:

// Configure your update endpoint
{
plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground',
updateUrl: 'https://your-server.com/api/check-update'
}
}
}

Ihr Server sollte folgendes zurückgeben:

{
"version": "1.0.1",
"url": "https://your-server.com/updates/1.0.1.zip"
}

Siehe Selbstgeführter Modus Detailliertere Informationen finden Sie hier.

Vollständige Kontrolle über Aktualisierungen:

import { CapacitorUpdater } from '@capgo/capacitor-updater';
async function checkAndUpdate() {
// Check for updates from your server
const response = await fetch('https://api.example.com/check-update');
const { version, url } = await response.json();
// Download the update
const bundle = await CapacitorUpdater.download({
url,
version
});
// Notify bundle is ready
await CapacitorUpdater.notifyAppReady();
// Set as next version
await CapacitorUpdater.set({ id: bundle.id });
// Reload when ready
await CapacitorUpdater.reload();
}
  • Rufen Sie immer auf notifyAppReady() Wenn Ihre App erfolgreich geladen wird
  • Testen Sie Aktualisierungen gründlich, bevor Sie sie in die Produktion einbringen
  • Implementieren Sie eine ordnungsgemäße Fehlerbehandlung für Netzwerkfehler
  • Verwenden Sie Versionsnummern konsistent
  • Kleine Bundle-Größen für schnellere Downloads
  • Überwachung der Erfolgsraten von Updates

Zukünftige Schritte

Zukünftige Schritte

Unterstützung

- Unterstützung

Wenn Sie native Plugin-Arbeit planen, verbinden Sie es mit Getting Started um native Plugin-Arbeit zu planen, verbinden Sie es mit Verwenden Sie @capgo/capacitor-Updater Verwenden Sie @capgo/capacitor-Updater, um die native Fähigkeit in Verwenden Sie @capgo/capacitor-Updater, Capgo-Plugin-Verzeichnis um die Produktworkflow in Capgo-Plugin-Verzeichnis, Capacitor-Plugins von Capgo um die Implementierungsdetails in Capacitor-Plugins von Capgo __CAPGO_KEEP_0__-Plugins von __CAPGO_KEEP_1__ Für die Implementierungsdetails in Hinzufügen oder Aktualisieren von Plugins, und Ionische Unternehmens-Plugin-Alternativen Für das Produktworkflow in Ionische Unternehmens-Plugin-Alternativen.