Guida rapida
Copia un prompt di setup con i passaggi di installazione e la guida markdown completa per questo plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-share-target`
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/share-target/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.
Installazione
Sezione intitolata “Install”Puoi usare il nostro Setup assistito dall'AI per installare il plugin. Aggiungi le skill Capgo al tuo tool AI con il comando seguente:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi usa questo prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-share-target` plugin in my project.Se preferisci il Setup manuale, installa il plugin eseguendo i comandi seguenti e segui le istruzioni specifiche per piattaforma qui sotto:
bun add @capgo/capacitor-share-targetbunx cap syncImporta
Sezione intitolata “Import”import { CapacitorShareTarget } from '@capgo/capacitor-share-target';Ascolto anticipato (cold start)
Sezione intitolata “Ascolta subito (cold start)”Registrati shareReceived non appena l'app si avvia, prima di indirizzare gli utenti verso le schermate che consumano il contenuto condiviso. Su iOS, il layer nativo mantiene l'evento finché JavaScript non lo consuma, il che copre le condivisioni che arrivano mentre la WebView è ancora in avvio.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
const shareListener = await CapacitorShareTarget.addListener('shareReceived', (event) => { routeSharedPayload(event.title, event.texts, event.files);});
// When tearing down the handler:await shareListener.remove();Configura appGroupId le capacitor.config e usa lo stesso App Group nella tua Share Extension. Consulta il README del plugin su GitHub per l'esempio di estensione code.
Errori comuni
Sezione intitolata “Errori comuni”- Configurazione nativa: gli intent funzionano solo dopo i passaggi per manifest e Xcode indicati nel README.
- Cold start: buffer delle condivisioni finché il router non è pronto.
- URI dei file: copia nello storage dell'app prima dell'upload, l'accesso potrebbe scadere.
API Panoramica
Sezione intitolata “Panoramica API”addListener
Sezione intitolata “addListener”Ascolta l'evento shareReceived.
Registra un listener che verrà chiamato quando un contenuto viene condiviso all'applicazione da un'altra app. Il callback riceve i dati dell'evento contenenti titolo, testi e file.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
const listener = await CapacitorShareTarget.addListener('shareReceived', (event) => { console.log('Title:', event.title); console.log('Texts:', event.texts); event.files?.forEach(file => { console.log(`File: ${file.name} (${file.mimeType})`); });});
// To remove the listener:await listener.remove();removeAllListeners
Sezione intitolata “removeAllListeners”Rimuovi tutti i listener di questo plugin.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
await CapacitorShareTarget.removeAllListeners();getPluginVersion
Sezione intitolata “getPluginVersion”Ottieni la versione nativa del plugin Capacitor.
Restituisce la versione corrente dell'implementazione del plugin nativo.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
const { version} = await CapacitorShareTarget.getPluginVersion();console.log('Plugin version:', version);Riferimento ai tipi
Sezione intitolata “Riferimento ai tipi”ShareReceivedEvent
Sezione intitolata “ShareReceivedEvent”Dati dell'evento ricevuti quando il contenuto viene condiviso con l'app.
export interface ShareReceivedEvent { /** * The title of the shared content. * * @since 0.1.0 */ title: string;
/** * Array of text content shared to the application. * * @since 0.1.0 */ texts: string[];
/** * Array of files shared to the application. * * @since 0.2.0 */ files: SharedFile[];}SharedFile
Sezione intitolata “SharedFile”Rappresenta un file condiviso con l'applicazione.
export interface SharedFile { /** * The URI of the shared file. On Android/iOS this will be a file path or data URL. * On web this will be a cached URL accessible via fetch. * * @since 0.1.0 */ uri: string;
/** * The name of the shared file, with or without extension. * * @since 0.1.0 */ name: string;
/** * The MIME type of the shared file. * * @since 0.1.0 */ mimeType: string;}Fonte di verità
Sezione intitolata “Source Of Truth”Questa pagina è generata dal src/definitions.ts. Riesegui la sync quando il API pubblico cambia upstream.
Continua da Getting Started
Sezione intitolata “Continua da Getting Started”Se stai usando Guida rapida per pianificare dashboard e operazioni API, collegalo a Utilizzo di @capgo/capacitor-share-target per la funzionalità nativa in Utilizzo di @capgo/capacitor-share-target, API Panoramica per i dettagli di implementazione in Panoramica di API, Introduzione per i dettagli implementativi nell'Introduzione, Chiavi API per i dettagli implementativi in API Keys, e Dispositivi per i dettagli implementativi in Dispositivi.