Erste Schritte
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses 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.
Installieren
Abschnitt „Installation“Du kannst unser KI-gestütztes Setup nutzen, um das Plugin zu installieren. Füge die Capgo Skills mit dem folgenden Befehl deinem KI-Tool hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsNutze dann diesen Prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-share-target` plugin in my project.Wenn du ein manuelles Setup bevorzugst, installiere das Plugin mit den folgenden Befehlen und befolge die plattformspezifischen Anweisungen unten:
bun add @capgo/capacitor-share-targetbunx cap syncImportieren
Abschnitt mit dem Titel „Import“import { CapacitorShareTarget } from '@capgo/capacitor-share-target';Frühzeitig lauschen (Cold Start)
Abschnitt: „Frühzeitig zuhören (Cold Start)“Registrieren shareReceived sobald deine App startet, noch bevor die Nutzer auf Screens geleitet werden, die geteilte Inhalte verarbeiten. Unter iOS behält der Native Layer das Event, bis JavaScript es verarbeitet – das deckt auch Shares ab, die eintreffen, während die WebView noch lädt.
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();Konfigurieren appGroupId in capacitor.config und spiegel die gleiche App Group in deiner Share Extension wider. Siehe das Plugin-README auf GitHub für ein Extension-Beispiel code.
Häufige Stolperfallen
Abschnitt „Häufige Fallstricke“- Native Einrichtung: Intents funktionieren erst nach den Manifest- und Xcode-Schritten im README.
- Cold Start: puffert Shares, bis dein Router bereit ist.
- File-URIs: vor dem Upload in den App-Speicher kopieren, da der Zugriff ablaufen kann.
API Übersicht
Abschnitt „API Übersicht“addListener
Abschnitt mit dem Titel „addListener“Auf das shareReceived-Event hören.
Registriert einen Listener, der aufgerufen wird, wenn Inhalte von einer anderen App an die Anwendung geteilt werden. Der Callback erhält Event-Daten mit Title, Texts und Files.
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
Abschnitt mit dem Titel „removeAllListeners“Entfernt alle Listener für dieses Plugin.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
await CapacitorShareTarget.removeAllListeners();getPluginVersion
Abschnitt mit dem Titel „getPluginVersion“Die native Capacitor Plugin-Version abrufen.
Gibt die aktuelle Version der nativen Plugin-Implementierung zurück.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
const { version} = await CapacitorShareTarget.getPluginVersion();console.log('Plugin version:', version);Typreferenz
Abschnitt mit dem Titel „Typreferenz“ShareReceivedEvent
Abschnitt mit dem Titel „ShareReceivedEvent“Event-Daten, die empfangen werden, wenn Inhalte mit der App geteilt werden.
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
Abschnitt mit dem Titel „SharedFile“Repräsentiert eine Datei, die mit der App geteilt wurde.
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 of Truth
Abschnitt mit dem Titel „Source of Truth“Diese Seite wird aus dem Plugin generiert src/definitions.ts. Führe den Sync erneut aus, wenn sich das öffentliche API upstream ändert.
Weiter geht's nach Getting Started
Abschnitt: „Weiter geht’s mit Getting Started“Wenn du es nutzt Erste Schritte um Dashboard- und API-Operationen zu planen, verbinde es mit @capgo/capacitor-share-target nutzen für die native Funktion bei der Nutzung von @capgo/capacitor-share-target, API Übersicht für Details zur Implementierung im API Overview, Einführung für die Implementierungsdetails in der Einleitung, API Schlüssel für das Implementierungsdetail in API Keys und Geräte für das Implementierungsdetail in Devices.