Zum Inhalt springen

Getting Started

  1. Das Paket installieren

    Terminal-Fenster
    bun add @capgo/capacitor-webview-version-checker
  2. Natives Projekte synchronisieren

    Terminal-Fenster
    bunx cap sync
  3. Optional: Hinzufügen von Plugin-Konfiguration Sie können mit den Standards (WebviewVersionChecker: {}) laufen oder die Anzeige und die Schwellenwertverhalten anpassen capacitor.config.ts.

Standardmäßig verwendet dieses Plugin eine Browserslist-Style-Kompatibilitätsregel:

  • minimumDeviceSharePercent standardmäßig 3
  • die Teildatenmenge wird bei der Buildzeit aus caniuse-Daten gebündelt
  • keine runtime-Datenmenge-URL-Aufruf ist für den Standardfluss erforderlich
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {},
},
};
export default config;
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {
autoPromptOnOutdated: true,
},
},
};
export default config;

Erweiterte Schwellenwert-Modus (Benutzerdefinierte Datensatz)

Abschnitt mit dem Titel „Erweiterte Schwellenwert-Modus (Benutzerdefinierte Datensatz)“
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {
minimumDeviceSharePercent: 3,
versionShareByMajor: {
'137': 58.2,
'136': 21.3,
'135': 4.6,
'134': 2.1,
},
autoPromptOnOutdated: true,
},
},
};
export default config;

Verwenden Sie dies nur, wenn Sie Kompatibilität auf der Grundlage der tatsächlichen Verwendung und nicht nur auf einer festen Version möchten.

  • minimumDeviceSharePercent: 3 bedeutet, dass die installierte Hauptversion mindestens 3 % in Ihrem Datensatz darstellen muss.
  • versionShareByMajor Ist Ihr benutzerdefinierter Karten: Hauptversion => Prozent.
  • Wenn Sie remote Daten bevorzugen, verwenden Sie versionShareApiUrl mit einem von:
    • { "versionShareByMajor": { "137": 54.2, "136": 23.8 } }
    • { "shareByMajor": { "137": 54.2, "136": 23.8 } }
    • { "versions": [{ "major": 137, "share": 54.2 }, { "version": "136.0.0.0", "percent": 23.8 }] }
import { WebviewVersionChecker } from '@capgo/capacitor-webview-version-checker';
await WebviewVersionChecker.addListener('webViewOutdated', (status) => {
console.log('Outdated WebView detected', status);
});
await WebviewVersionChecker.check({
minimumMajorVersion: 124,
showPromptOnOutdated: true,
});

Warum sollte man dieses Plugin statt nur Capacitor-Konfiguration verwenden

Abschnitt mit dem Titel “Warum sollte man dieses Plugin statt nur Capacitor-Konfiguration verwenden”

Capacitor unterstützt statische Mindestprüfungen:

android: {
minWebViewVersion: 124,
},
server: {
errorPath: 'unsupported-webview.html',
}

Dieses Plugin fügt Echtzeitereignisse und native Benutzeroberfläche für Anfragen hinzu, sodass Benutzer das App-Update trotzdem öffnen und verwenden können.

Bewertungsreihenfolge:

  1. Geräteteilungs-Schwelle-Modus (minimumDeviceSharePercent +Datenmenge), falls bereitgestellt
  2. Neueste Version-Modus (latestVersion / latestVersionApiUrl)
  3. Mindestmajor-Fallback (minimumMajorVersion)

The plugin supports both WebView provider models used by Capacitor on Android:

  • Android 5-6 und 10+: Android System WebView (com.google.android.webview)
  • Android 7-9: Google Chrome (com.android.chrome)

Wenn Sie native Medien und Schnittstellenverhalten planen und es mit Getting Started verbinden möchten, verwenden Sie Using @capgo/capacitor-webview-version-checker for the native capability in Using @capgo/capacitor-webview-version-checker, Using @capgo/capacitor-live-activities für die native Fähigkeit in Using @capgo/capacitor-live-activities, @capgo/capacitor-live-activities für die Implementierungsdetail in @capgo/capacitor-live-activities, Using @capgo/capacitor-video-player für die native Fähigkeit in Using @capgo/capacitor-video-player und @capgo/capacitor-video-player für die Implementierungsdetail in @capgo/capacitor-video-player.