Lompat ke konten

Mulai

  1. Pasang paket

    Jendela terminal
    bun add @capgo/capacitor-webview-version-checker
  2. Sinkronkan proyek native

    Jendela terminal
    bunx cap sync
  3. Opsional: tambahkan konfigurasi plugin Anda dapat menjalankan dengan default (WebviewVersionChecker: {}) atau mengatur perilaku prompt dan ambang batas capacitor.config.ts.

Pengaturan default (kasus pengguna utama)

Pengaturan Default (Kasus Pengguna Utama)

Dengan default, plugin ini menggunakan aturan kompatibilitas gaya Browserslist:

  • minimumDeviceSharePercent berdasarkan 3
  • dataset berbagi dikompilasi pada waktu build dari data caniuse
  • tidak perlu panggil URL dataset runtime untuk alur default
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {},
},
};
export default config;

Pengaturan sederhana hanya konfigurasi (tampilkan prompt asli)

Pengaturan Pengguna Utama (Tampilkan Prompt Asli)
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {
autoPromptOnOutdated: true,
},
},
};
export default config;

Mode ambang batas lanjutan (dataset kustom)

Pengaturan Ambang Batas Lanjutan (Dataset Kustom)
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;

Gunakan ini hanya jika Anda ingin kompatibilitas berdasarkan bagian dunia nyata daripada hanya versi tetap.

  • minimumDeviceSharePercent: 3 berarti versi mayor yang terinstal harus mewakili setidaknya 3% dalam dataset Anda.
  • versionShareByMajor Jika Anda lebih suka data jarak jauh, gunakan
  • dengan salah satu: versionShareApiUrl Penggunaan lanjutan dengan JavaScript
    • { "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 }] }

Judul bagian “Penggunaan lanjutan dengan JavaScript”

Salin ke clipboard
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,
});

Judul bagian “Mengapa menggunakan plugin ini daripada hanya Capacitor config”

Capacitor mendukung pengecekan minimum statis:

Capacitor supports static minimum checks:

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

Plugin ini menambahkan event waktu eksekusi dan UX prompt asli, sehingga pengguna masih bisa membuka dan menggunakan aplikasi sambil disarankan untuk memperbarui.

Urutan evaluasi:

  1. Mode ambang batas perangkat (dataset +), jika disediakanminimumDeviceSharePercent Mode versi terbaru (
  2. Versi mayor minimum (latestVersion / latestVersionApiUrl)
  3. Pengaturan penyedia AndroidminimumMajorVersion)

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

  • Android 7-9: Google Chrome (com.google.android.webview)
  • Penggunaan penyedia WebView pada Capgocom.android.chrome)