Prise en main
Copiez un prompt de configuration incluant les étapes d'installation et le guide markdown complet pour ce 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.
Installer
Section intitulée « Installation »Vous pouvez utiliser notre configuration assistée par IA pour installer le plugin. Ajoutez les skills Capgo à votre outil d'IA avec la commande suivante :
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUtilisez ensuite le prompt suivant :
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-share-target` plugin in my project.Si vous préférez une installation manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à chaque plateforme ci-dessous :
bun add @capgo/capacitor-share-targetbunx cap syncImporter
Section intitulée « Import »import { CapacitorShareTarget } from '@capgo/capacitor-share-target';Écoute précoce (cold start)
Section intitulée « Écouter dès le démarrage (cold start) »S'inscrire shareReceived dès le démarrage de votre application, avant de diriger les utilisateurs vers les écrans qui consomment le contenu partagé. Sur iOS, la couche native conserve l'événement jusqu'à ce que le JavaScript le consomme, ce qui couvre les partages qui arrivent pendant que la WebView est encore en train de démarrer.
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();Configurer appGroupId dans capacitor.config et utilisez le même App Group dans votre Share Extension. Consultez le README du plugin sur GitHub pour un exemple d'extension code.
Erreurs courantes
Section intitulée « Erreurs courantes »- Configuration native: les intents ne fonctionnent qu'après les étapes du README pour le manifest et Xcode.
- Démarrage à froid: buffer shares until your router is ready.
- URI de fichiers: copier dans le stockage de l'app avant l'upload, l'accès peut expirer.
Aperçu de API
Section intitulée « Aperçu API »addListener
Section intitulée « addListener »Écouter l'événement shareReceived.
Enregistre un écouteur qui sera appelé lorsque du contenu est partagé vers l'application depuis une autre application. Le callback reçoit les données de l'événement contenant le titre, les textes et les fichiers.
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
Section intitulée « removeAllListeners »Supprimez tous les écouteurs de ce plugin.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
await CapacitorShareTarget.removeAllListeners();getPluginVersion
Section intitulée « getPluginVersion »Récupère la version du plugin natif Capacitor.
Renvoie la version actuelle de l'implémentation du plugin natif.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
const { version} = await CapacitorShareTarget.getPluginVersion();console.log('Plugin version:', version);Référence de type
Section intitulée « Référence de type »ShareReceivedEvent
Section intitulée « ShareReceivedEvent »Données de l'événement reçues lorsque du contenu est partagé avec l'application.
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
Section intitulée « SharedFile »Représente un fichier partagé avec l'application.
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;}Source de vérité
Section intitulée « Source de vérité »Cette page est générée à partir de src/definitions.ts. Relancez la synchronisation lorsque l’API public change en amont.
Continuer depuis Getting Started
Section intitulée « Continuer après Prise en main »Si vous utilisez Prise en main pour planifier les opérations du dashboard et de API, connectez-l’avec Utiliser @capgo/capacitor-share-target pour la fonctionnalité native dans « Utiliser @capgo/capacitor-share-target », Aperçu de API pour les détails d'implémentation dans « Vue d'ensemble de API », Introduction pour les détails d'implémentation dans l'introduction, Clés API pour les détails d'implémentation dans « Clés API », et Appareils pour les détails d'implémentation dans Devices.