본문 바로가기
@capgo/capacitor-file-sharer 파일 및 스토리지 오픈 소스

파일 공유기 Capacitor 플러그인

Android, iOS, Web에서 base64 데이터 또는 로컬 경로의 파일을 공유하고 저장하세요

설치

bun add @capgo/capacitor-file-sharer bunx cap sync
npm, pnpm 또는 yarn
  • npm install @capgo/capacitor-file-sharer
  • pnpm add @capgo/capacitor-file-sharer
  • yarn add @capgo/capacitor-file-sharer

가이드

Capacitor에서 File Sharer 사용 방법

기기에서 테스트하기

Capgo 앱을 다운로드한 후 QR code을 스캔하세요.

File Sharer 플러그인 미리보기 QR code

@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 변환을 사용합니다.

전체 레퍼런스

@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.의 구현 세부 사항은

자주 묻는 질문

File Sharer 플러그인 FAQ

Capacitor 앱에 File Sharer 플러그인을 어떻게 설치하나요?

"bun add @capgo/capacitor-file-sharer"(또는 "npm install @capgo/capacitor-file-sharer")를 실행한 다음 "bunx cap sync"를 실행하면 iOS와 Android 프로젝트에 네이티브 code가 반영됩니다. 앱 code에서 "@capgo/capacitor-file-sharer"를 import 하세요.

@capgo/capacitor-file-sharer는 React, Vue, Angular에서도 작동하나요?

네. File Sharer는 Capacitor 패키지이므로 Ionic, React, Vue, Angular, Svelte 및 일반 JavaScript를 포함해 Capacitor에서 실행되는 모든 웹 프레임워크에서 사용할 수 있습니다.

@capgo/capacitor-file-sharer는 어떤 Capacitor 버전을 지원하나요?

Capgo 플러그인은 Capacitor의 메이저 버전을 따릅니다. 사용 중인 Capacitor 메이저 버전과 일치하는 플러그인 메이저 버전을 사용하세요 (예: Capacitor 8에는 플러그인 v8). 유지 관리되는 버전은 GitHub README의 호환성 표에서 확인할 수 있습니다.

@capgo/capacitor-file-sharer는 무료 오픈 소스인가요?

네. code 소스 코드는 GitHub의 https://github.com/Cap-go/capacitor-file-sharer/에 공개되어 있고, 패키지는 npm에서 무료로 설치할 수 있습니다. 버그 리포트와 pull request는 언제나 환영합니다.

App Store 심사 없이 File Sharer를 사용하는 code을(를) 업데이트할 수 있나요?

플러그인을 설치하거나 업그레이드하면 네이티브 code가 변경되므로 새로운 스토어 빌드가 필요합니다. 그 이후에는 플러그인을 호출하는 JavaScript, HTML, CSS 변경 사항을 Capgo live updates로 즉시 배포할 수 있습니다.

앱 심사 대기 없이 File Sharer 변경 사항 배포

스토어 빌드에 플러그인이 포함되면, Capgo live updates로 JavaScript, HTML, CSS 변경 사항을 몇 분 만에 사용자에게 푸시할 수 있습니다.

Capgo로 시작하기