Saltar al contenido

Primeros pasos

GitHub

Puedes usar nuestro setup asistido por IA para instalar el plugin. Añade las skills de Capgo a tu herramienta de IA con el siguiente comando:

Ventana de terminal
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Luego usa el siguiente prompt:

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

Si prefieres la configuración manual, instala el plugin ejecutando estos comandos y sigue las instrucciones de cada plataforma:

  1. Instala el paquete

    Ventana de terminal
    bun add @capgo/capacitor-webview-version-checker
  2. Sincronizar proyectos nativos

    Ventana de terminal
    bunx cap sync
  3. Opcional: añadir config del plugin Puedes ejecutarlo con los valores por defecto (WebviewVersionChecker: {}) o personaliza el comportamiento del prompt y el threshold en capacitor.config.ts.

import { WebviewVersionChecker } from '@capgo/capacitor-webview-version-checker';
const result = await WebviewVersionChecker.check();
console.log(result);
import { WebviewVersionChecker } from '@capgo/capacitor-webview-version-checker';
const result = await WebviewVersionChecker.startMonitoring();
console.log(result);
import { WebviewVersionChecker } from '@capgo/capacitor-webview-version-checker';
const result = await WebviewVersionChecker.stopMonitoring();
console.log(result);
  • Listeners: elimina los handles cuando se desmonten las pantallas.
  • Sync nativo: ejecuta bunx cap sync tras actualizar los plugins.
  • Fuente de verdad: confianza src/definitions.ts en el repo de GitHub.

Comportamiento por defecto (caso de uso principal)

Sección titulada “Comportamiento por defecto (caso de uso principal)”

Por defecto, este plugin utiliza una regla de compatibilidad estilo Browserslist:

  • minimumDeviceSharePercent por defecto es 3
  • el dataset compartido se empaqueta en tiempo de build con los datos de caniuse
  • no es necesario llamar a una URL de dataset en runtime para el flujo por defecto
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {},
},
};
export default config;

Configuración simple solo con config (mostrar prompt nativo)

Sección titulada “Configuración simple (mostrar prompt nativo)”
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = {
plugins: {
WebviewVersionChecker: {
autoPromptOnOutdated: true,
},
},
};
export default config;
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;

Usa esto solo si quieres compatibilidad basada en el uso real de share en lugar de una versión fija.

  • minimumDeviceSharePercent: 3 significa que la versión major instalada debe representar al menos el 3% en tu dataset.
  • versionShareByMajor es tu mapa personalizado: versión major => porcentaje.
  • Si prefieres datos remotos, usa versionShareApiUrl con uno de estos:
    • { "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,
});

Capacitor soporta comprobaciones mínimas estáticas:

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

Este plugin añade eventos en tiempo de ejecución y un prompt nativo, para que los usuarios puedan seguir usando la app mientras se les invita a actualizar.

Orden de evaluación:

  1. Modo de umbral de porcentaje de dispositivos (minimumDeviceSharePercent + dataset), si se proporciona
  2. Modo de última versión (latestVersion / latestVersionApiUrl)
  3. Fallback de versión mayor mínima (minimumMajorVersion)

El plugin es compatible con ambos modelos de proveedor WebView que usa Capacitor en Android:

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

Si estás usando Primeros pasos para planificar el comportamiento de los medios nativos y la interfaz, conéctalo con Usar @capgo/capacitor-webview-version-checker para la capacidad nativa al usar @capgo/capacitor-webview-version-checker, Uso de @capgo/capacitor-live-activities para la capacidad nativa en Uso de @capgo/capacitor-live-activities, @capgo/capacitor-live-activities para los detalles de implementación en @capgo/capacitor-live-activities, Uso de @capgo/capacitor-video-player para la capacidad nativa en Uso de @capgo/capacitor-video-player, y @capgo/capacitor-video-player para el detalle de implementación en @capgo/capacitor-video-player.