Lompat ke konten

Pengenalan

  1. Pasang paket

    Jendela Terminal
    bun add @capgo/capacitor-webview-version-checker
  2. Sinkronisasi 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 di capacitor.config.ts.

Dengan default, plugin ini menggunakan aturan kompatibilitas Browserslist-style:

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

Pengaturan sederhana hanya konfigurasi (tampilkan prompt asli)

Bagian berjudul “Pengaturan sederhana hanya konfigurasi (tampilkan prompt asli)”
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {
autoPromptOnOutdated: true,
},
},
};
export default config;

Mode ambang batas yang lebih maju (dataset khusus)

Judul bagian “Mode ambang batas yang lebih maju (dataset khusus)”
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 yang dipakai di dunia nyata daripada hanya versi tetap.

  • minimumDeviceSharePercent: 3 berarti versi mayor yang terpasang harus mewakili setidaknya 3% di dataset Anda.
  • versionShareByMajor adalah peta kustom Anda: versi mayor => persentase.
  • Jika Anda lebih suka data jarak jauh, gunakan versionShareApiUrl dengan salah satu:
    • { "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,
});

Mengapa menggunakan plugin ini daripada hanya Capacitor konfigurasi

Mengapa menggunakan plugin ini daripada hanya Capacitor konfigurasi

Capacitor mendukung periksa minimum statis:

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-berbagi (,+ dataset), jika disediakanminimumDeviceSharePercent Mode versi terbaru (
  2. Fallback mayor minimum (latestVersion / latestVersionApiUrl)
  3. Penanganan provider AndroidminimumMajorVersion)

Mengapa menggunakan plugin ini daripada hanya __CAPGO_KEEP_0__ konfigurasi

Penanganan provider Android

Plugin ini mendukung kedua model penyedia WebView yang digunakan oleh Capacitor pada Android:

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

Jika Anda menggunakan Getting Started untuk merencanakan perilaku media dan antarmuka native, hubungkannya dengan Menggunakan @capgo/capacitor-webview-version-checker untuk kemampuan native di Menggunakan @capgo/capacitor-webview-version-checker, Menggunakan @capgo/capacitor-live-activities untuk kemampuan native di Menggunakan @capgo/capacitor-live-activities, @capgo/capacitor-live-activities untuk detail implementasi di @capgo/capacitor-live-activities, Menggunakan @capgo/capacitor-video-player untuk kemampuan asli di Menggunakan @capgo/capacitor-video-player, dan @capgo/capacitor-video-player untuk detail implementasi di @capgo/capacitor-video-player.