Empezar
Copia un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-native-loader`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/native-loader/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Título de la sección “Instalación”
Puedes utilizar nuestra configuración asistida por IA para instalar el plugin. Agrega las __CAPGO_KEEP_0__ habilidades a tu herramienta de IA utilizando el siguiente comando:You can use our AI-Assisted Setup to install the plugin. Add the Capgo skills to your AI tool using the following command:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsInstalación
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-native-loader` plugin in my project.Si prefieres la configuración manual, instala el plugin ejecutando los siguientes comandos y sigue las instrucciones específicas de la plataforma a continuación:
-
Instalar el paquete
Ventana de terminal npm install @capgo/capacitor-native-loadernpx cap sync -
Mostrar un cargador nativo desde JavaScript
import { NativeLoader } from '@capgo/capacitor-native-loader';const { id } = await NativeLoader.show({style: 'siri',placement: 'fullscreen',message: 'Preparing workspace',colors: ['#71f6ff', '#8b5cf6', '#ff4ecd', '#fff7ad'],scrimColor: 'rgba(3, 7, 18, 0.42)',interactionMode: 'block',});await doExpensiveWork();await NativeLoader.hide({ id });
Configurar valores por defecto
Sección titulada “Configurar valores por defecto”await NativeLoader.configure({ defaults: { style: 'orbit', placement: 'center', size: 96, colors: ['#38bdf8', '#a78bfa'], reducedMotion: 'system', interactionMode: 'passThrough', },});Cargador superior estilo Chrome
Sección titulada “Cargador superior estilo Chrome”Usar style: 'chrome' cuando desee el barra de progreso familiar del navegador y que la WebView permanezca usable debajo de ella.
const { id } = await NativeLoader.show({ style: 'chrome', placement: 'top', colors: ['#4285f4', '#34a853', '#fbbc05', '#ea4335'], thickness: 4, interactionMode: 'passThrough', webView: { mode: 'resize', insets: { top: 12 }, restoreOnHide: true, },});
await NativeLoader.hide({ id, restoreWebView: true });Cargador de Borde de Siri V2
Título de la sección “Cargador de Borde de Siri V2”Usar style: 'siri-v2' cuando el estado de carga debe ser un movimiento de color completo de pantalla nativo alrededor de la orilla de la aplicación en lugar de una tarjeta centrada.
const { id } = await NativeLoader.show({ style: 'siri-v2', placement: 'fullscreen', colors: ['#71f6ff', '#8b5cf6', '#ff4ecd', '#fff7ad'], thickness: 10, scrimColor: 'rgba(3, 7, 18, 0.10)', interactionMode: 'passThrough',});
await NativeLoader.hide({ id });Progreso de Actualización
Título de la sección “Progreso de Actualización”const { id } = await NativeLoader.show({ style: 'ring', message: 'Uploading', progress: 0,});
for await (const progress of uploadFile(file)) { await NativeLoader.setProgress({ id, progress });}
await NativeLoader.hide({ id });Ajustar el tamaño de la WebView
Título de la sección “Ajustar el tamaño de la vista de la web”Usar setWebViewLayout cuando un cargador nativo debe poseer parte de la pantalla mientras el contenido de la web sigue visible y usable.
await NativeLoader.setWebViewLayout({ mode: 'inset', insets: { top: 96, bottom: 24 }, animated: true,});
await NativeLoader.show({ style: 'wave', placement: 'top', size: 72, message: 'Syncing', interactionMode: 'passThrough',});Restaurar la disposición original cuando la superficie nativa desaparezca:
await NativeLoader.hideAll({ restoreWebView: true });Cargadores Lottie e imágenes
Título de la sección “Cargadores Lottie e imágenes”Empaquetar JSON de Lottie o recursos de imagen en la aplicación nativa y referenciarlos desde JavaScript.
await NativeLoader.show({ style: 'lottie', placement: 'center', asset: { type: 'lottie', source: 'rocket-loader.json', loop: true, },});await NativeLoader.show({ style: 'image', placement: 'bottom', asset: { type: 'image', source: 'loader-frame', },});Llamadas nativas de Swift
Sección titulada “Llamadas nativas de Swift”Otros plugins de iOS pueden llamar directamente al cargador compartido.
import CapgoCapacitorNativeLoader
let id = NativeLoader.shared.show(options: [ "style": "siri", "placement": "fullscreen", "message": "Opening secure session", "interactionMode": "block"])
NativeLoader.shared.setProgress(id: id, progress: 0.6)NativeLoader.shared.hide(id: id)Llamadas nativas de Kotlin
Sección titulada “Llamadas nativas de Kotlin”Otros plugins de Android pueden llamar al objeto público desde Kotlin o Java.
import app.capgo.nativeloader.NativeLoader
val id = NativeLoader.show( activity = activity, options = mapOf( "style" to "orbit", "placement" to "fullscreen", "message" to "Loading profile", "interactionMode" to "block", ), webView = bridge.webView,)
NativeLoader.setProgress(id, 0.6)NativeLoader.hide(id)Opciones Comunes
Sección titulada “Opciones Comunes”| Opción | Tipo | Descripción |
|---|---|---|
style | 'siri' | 'siri-v2' | 'chrome' | 'orbit' | 'ring' | 'pulse' | 'dots' | 'bars' | 'wave' | 'halo' | 'lottie' | 'image' | Renderizador de cargador |
placement | 'center' | 'top' | 'bottom' | 'left' | 'right' | 'fullscreen' | 'around' | 'custom' | Posición de la superficie nativa |
interactionMode | 'passThrough' | 'block' | 'loaderOnly' | Gestión de toques |
backgroundColor | string | Color del recubrimiento, incluyendo alpha |
scrimColor | string | Color del recorte de pantalla completa o alrededor de la pantalla |
colors | string[] | Colores del gradiente del cargador |
progress | number | Valor determinado desde 0 hasta 1 |
autoHide | number | Milisegundos antes de ocultarse automáticamente |
asset | object | Fuente de Lottie o recurso de imagen |
Usar reducedMotion: 'system' para respetar los ajustes de movimiento de la plataforma del usuario.