시작하기
이 플러그인의 설치 단계와 전체 마크다운 가이드가 포함된 설정 프롬프트를 복사하세요.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-file-sharer`
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/file-sharer/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-file-sharer` plugin in my project.수동 설정을 선호한다면, 다음 명령어를 실행하여 플러그인을 설치하고 아래의 플랫폼별 지침을 따르세요:
npm install @capgo/capacitor-file-sharernpx cap sync가져오기
“Import” 섹션import { FileSharer } from '@capgo/capacitor-file-sharer';빠른 시작
“빠른 시작” 섹션import { FileSharer } from '@capgo/capacitor-file-sharer';
await FileSharer.share({ filename: 'report.pdf', contentType: 'application/pdf', base64Data: reportBase64,});예시: 저장
“예제: 저장하기” 섹션import { FileSharer } from '@capgo/capacitor-file-sharer';
const result = await FileSharer.save({ filename: 'report.pdf', contentType: 'application/pdf', base64Data: reportBase64,});console.log(result);자주 하는 실수
“흔한 실수” 섹션- 네이티브 동기화: 실행
npx cap sync플러그인 업그레이드 후. - 신뢰할 수 있는 소스: 신뢰
src/definitions.tsGitHub 레포지토리에서.
Base64 파일 공유하기
“Base64 파일 공유하기” 섹션import { FileSharer } from '@capgo/capacitor-file-sharer';
await FileSharer.share({ filename: 'report.pdf', contentType: 'application/pdf', base64Data: reportBase64, title: 'Quarterly report', text: 'Attached report',});base64Data raw base64 문자열이거나 다음과 같은 data URL 형태일 수 있습니다: data:application/pdf;base64,....
로컬 파일 공유하기
“로컬 파일 공유하기” 섹션await FileSharer.share({ filename: 'export.zip', contentType: 'application/zip', path: fileUri,});네이티브 구현체는 로컬 경로를 지원합니다. file:// URL, Android content:// URI 및 Capacitor _capacitor_file_ URL.
파일 저장하기
“Save A File” 섹션const result = await FileSharer.save({ filename: 'backup.zip', contentType: 'application/zip', base64Data: zipBase64, android: { saveDirectory: 'downloads', relativePath: 'Download/My App', },});
console.log(result.uri);Android 저장 디렉토리는 downloads, pictures, movies, music, 그리고 documents입니다. Android 10 이상에서는 MediaStore를 통해 파일을 작성합니다. Android 9 이하 버전에서는 manifest의 WRITE_EXTERNAL_STORAGE 권한을 사용하여 maxSdkVersion=28.
텍스트를 파일과 함께 공유하기
“Share Text With A File” 섹션await FileSharer.share({ filename: 'photo.jpg', contentType: 'image/jpeg', path: photoUri, title: 'Site photo', subject: 'Photo export', text: 'Captured during inspection.',});text 로 전달됩니다. EXTRA_TEXT Android에서는 ...로, iOS에서는 두 번째 activity item으로 전달됩니다.
타입 레퍼런스
“타입 참조” 섹션ShareFileOptions
“ShareFileOptions” 섹션export interface ShareFileOptions { filename: string; base64Data?: string; path?: string; contentType?: string; text?: string; title?: string; subject?: string; android?: AndroidFileSharerOptions;}AndroidFileSharerOptions
“AndroidFileSharerOptions” 섹션export interface AndroidFileSharerOptions { chooserTitle?: string; saveDirectory?: 'downloads' | 'pictures' | 'movies' | 'music' | 'documents'; relativePath?: string;}SaveFileResult
“SaveFileResult” 섹션export interface SaveFileResult { uri?: string;}에러 코드
“Error Codes” 섹션ERR_PARAM_NO_FILENAME-filename이(가) 누락되었거나 비어 있습니다.ERR_PARAM_NO_DATA-base64Data도,path도 제공되지 않았습니다.ERR_PARAM_DATA_INVALID- base64 입력을 디코딩할 수 없습니다.ERR_LOCAL_FILE_NOT_FOUND- 제공된 로컬 경로 또는 content URI를 열 수 없습니다.ERR_FILE_CACHING_FAILED- 네이티브 임시 파일을 쓸 수 없습니다.ERR_FILE_SAVE_FAILED- Android에서 파일을 공용 저장소에 저장할 수 없습니다.ERR_ACTIVITY_NOT_FOUND- Android에서 공유 대상을 열 수 없습니다.USER_CANCELLED- iOS share sheet가 완료되지 않고 닫혔습니다.
Source of Truth
“Source Of Truth” 섹션이 페이지에서는 플러그인의 src/definitions.tsupstream에서 public API가 변경되면 sync를 다시 실행하세요.
시작하기 다음 단계
“Getting Started에서 계속하기” 섹션사용 중이라면 시작하기 저장 공간과 파일 처리를 계획하려면, 다음 항목과 연결하세요 @capgo/capacitor-file-sharer 사용하기 @capgo/capacitor-file-sharer 사용 시 네이티브 기능을 위한 @capgo/capacitor-data-storage-sqlite @capgo/capacitor-data-storage-sqlite의 구현 세부 사항은, @capgo/capacitor-data-storage-sqlite 사용하기 @capgo/capacitor-data-storage-sqlite 사용 시 네이티브 기능을 위해, @capgo/capacitor-file @capgo/capacitor-file의 구현 세부 사항을 위해, 그리고 @capgo/capacitor-file 사용하기 @capgo/capacitor-file. 사용 시 네이티브 기능을 위해