@capgo/capacitor-file-sharer 사용하기
base64 데이터, data URL, 로컬 파일 경로, file:// URL, Android content:// URI 및 Capacitor _capacitor_file_ URL.
설치
bun add @capgo/capacitor-file-sharer
bunx cap sync
플러그인이 제공하는 기능
share- Android 및 iOS에서 네이티브 공유 시트를 열거나, Web에서 파일을 다운로드합니다.save- Android 공용 컬렉션에 저장하거나, iOS 저장/공유 시트를 열거나, Web에서 다운로드합니다.getPluginVersion- 플랫폼 구현 버전을 반환합니다.
사용 예시
생성된 파일 공유하기
import { FileSharer } from '@capgo/capacitor-file-sharer';
await FileSharer.share({
filename: 'report.pdf',
contentType: 'application/pdf',
base64Data: reportBase64,
title: 'Quarterly report',
text: 'Attached report',
});
로컬 파일 공유하기
await FileSharer.share({
filename: 'export.zip',
contentType: 'application/zip',
path: fileUri,
});
Android 다운로드 폴더에 저장
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 공유 시에는
FileProvider,ClipData, URI 권한을 부여해 chooser 미리보기와 썸네일이 파일을 읽을 수 있게 합니다. - Android 저장은 Android 10 이상에서 MediaStore를, Android 9 이하에서는 공용 디렉토리를 사용합니다.
- iOS 공유는 base64 기반 임시 파일과 로컬 경로 직접 공유를 모두 지원합니다.
- 웹에서 공유 및 저장은 파일을 다운로드하며, 대용량 파일은 chunked base64 변환을 사용합니다.
전체 레퍼런스
- GitHub: https://github.com/Cap-go/capacitor-file-sharer/
- 문서: /docs/plugins/file-sharer/
@capgo/capacitor-file-sharer 사용하기에서 계속하기
사용 중이라면 @capgo/capacitor-file-sharer 사용하기 저장 공간과 파일 처리를 계획하려면, 다음 항목과 연결하세요 @capgo/capacitor-file-sharer @capgo/capacitor-file-sharer의 구현 세부 사항은 시작하기 Getting Started의 구현 상세 내용은 @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.의 구현 세부 사항은