Guía
Cómo usar App Intents en Capacitor
Usando @capgo/capacitor-app-intents
Interfaz del plugin App Intents de Capgo.
Instalar
bun add @capgo/capacitor-app-intents
bunx cap sync
bunx cap sync copia el code nativo del plugin en tus proyectos nativos. Ejecútalo de nuevo tras cada actualización del plugin.
Importar
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
API de un vistazo
| Método | Descripción |
|---|---|
getPendingInvocations |
Devuelve las invocaciones en cola antes de que JavaScript estuviera listo. |
removePendingInvocation |
Elimina una invocación pendiente después de que tu handler la procese. |
setEntityCatalog |
Persiste un catálogo de entidades para un string de tipo dado. |
setHomeScreenShortcutItems |
Reemplaza las acciones rápidas de la pantalla de inicio (UIApplicationShortcutItems). |
indexSpotlightEntities |
Indexa elementos de Spotlight para el dominio de tu app. |
removeSpotlightEntities |
Elimina elementos de Spotlight por id. |
performAppleSchemaTemplate |
Encola un handler de JavaScript para una plantilla de esquema de Apple en fase alpha. |
Ejemplos
getPendingInvocations()
Devuelve las invocaciones en cola antes de que JavaScript estuviera listo.
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
const result = await CapgoAppIntents.getPendingInvocations();
console.log(result);
removePendingInvocation()
Elimina una invocación pendiente después de que tu handler la procese.
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
await CapgoAppIntents.removePendingInvocation({ id: 'id-123' });
setEntityCatalog()
Persiste un catálogo de entidades para un string de tipo dado.
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
await CapgoAppIntents.setEntityCatalog({
type: 'type',
entries: [
{
id: 'id-123',
title: 'Hello from Capacitor',
},
],
});
setHomeScreenShortcutItems()
Reemplaza las acciones rápidas de la pantalla de inicio (UIApplicationShortcutItems).
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
await CapgoAppIntents.setHomeScreenShortcutItems({
items: [
{
type: 'type',
title: 'Hello from Capacitor',
},
],
});
indexSpotlightEntities()
Indexa elementos de Spotlight para el dominio de tu app.
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
await CapgoAppIntents.indexSpotlightEntities({
entities: [
{
id: 'id-123',
title: 'Hello from Capacitor',
actionName: 'action',
},
],
});
removeSpotlightEntities()
Elimina elementos de Spotlight por id.
import { CapgoAppIntents } from '@capgo/capacitor-app-intents';
await CapgoAppIntents.removeSpotlightEntities({ ids: ['ids'] });
La tabla anterior enumera los 7 métodos principales. Los helpers de versión y listeners, así como el contrato completo de cada método, están documentados en la repositorio GitHub.
Escuchar eventos
addListener devuelve un handle. Llama handle.remove() cuando la pantalla se desmonte, o CapgoAppIntents.removeAllListeners() para limpiar todos los listeners.