시작하기
이 플러그인의 설치 단계와 전체 마크다운 가이드가 포함된 설정 프롬프트를 복사하세요.
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.
AI-Assisted Setup으로 플러그인을 설치할 수 있습니다. 다음 명령어로 AI 도구에 Capgo 스킬을 추가하세요:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins그런 다음 아래 프롬프트를 사용하세요:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-share-target` plugin in my project.수동 설정을 선호한다면, 다음 명령어를 실행하여 플러그인을 설치하고 아래의 플랫폼별 지침을 따르세요:
bun add @capgo/capacitor-share-targetbunx cap sync가져오기
“Import” 섹션import { CapacitorShareTarget } from '@capgo/capacitor-share-target';초기 리스닝 (콜드 스타트)
“초기 수신 (콜드 스타트)” 섹션회원가입 shareReceived 공유 콘텐츠를 사용하는 화면으로 사용자를 라우팅하기 전, 앱이 부팅되는 즉시 수신합니다. iOS에서는 JavaScript가 이벤트를 소비할 때까지 네이티브 레이어가 이벤트를 보관하므로, WebView가 아직 시작 중일 때 도착한 공유도 처리할 수 있습니다.
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();구성하세요: appGroupId 에서 capacitor.config Share Extension에서도 동일한 App Group을 구성하세요. Extension 샘플 code은 GitHub의 플러그인 README를 참고하세요.
자주 하는 실수
“흔한 실수” 섹션- 네이티브 설정: intent는 README의 manifest 및 Xcode 단계를 완료해야만 작동합니다.
- 콜드 스타트: 라우터가 준비될 때까지 버퍼링합니다.
- 파일 URI: 업로드 전에 앱 저장소로 복사하세요. 액세스가 만료될 수 있습니다.
API 개요
“API 개요” 섹션addListener
“addListener” 섹션shareReceived 이벤트를 수신합니다.
다른 앱에서 콘텐츠가 애플리케이션으로 공유될 때 호출되는 리스너를 등록합니다. 콜백은 제목, 텍스트, 파일을 포함하는 이벤트 데이터를 수신합니다.
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
“removeAllListeners” 섹션이 플러그인의 모든 리스너를 제거합니다.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
await CapacitorShareTarget.removeAllListeners();getPluginVersion
“getPluginVersion” 섹션네이티브 Capacitor 플러그인 버전을 가져옵니다.
네이티브 플러그인 구현의 현재 버전을 반환합니다.
import { CapacitorShareTarget } from '@capgo/capacitor-share-target';
const { version} = await CapacitorShareTarget.getPluginVersion();console.log('Plugin version:', version);타입 레퍼런스
“타입 참조” 섹션ShareReceivedEvent
“ShareReceivedEvent” 섹션콘텐츠가 애플리케이션으로 공유될 때 수신되는 이벤트 데이터입니다.
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
“SharedFile” 섹션애플리케이션으로 공유된 파일을 나타냅니다.
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
“Source Of Truth” 섹션이 페이지는 플러그인의 src/definitions.tsupstream에서 public API가 변경되면 sync를 다시 실행하세요.
시작하기 다음 단계
“Getting Started에서 계속하기” 섹션사용 중이라면 시작하기 대시보드 및 API 운영을 계획하려면, 이를 다음과 연결하세요 @capgo/capacitor-share-target 사용하기 @capgo/capacitor-share-target 사용하기의 네이티브 기능을 위해, API 개요 구현 세부 사항은 API 개요에서 소개 구현 세부 사항은 소개에서 API 키 API Keys의 구현 세부 사항은, 기기 Devices의 구현 세부 사항은.