내용으로 건너뛰기

Getting Started

GitHub

설치

설치란
터미널 창
bun add @capgo/capacitor-file-sharer
bunx cap sync

수입

수입란
import { FileSharer } from '@capgo/capacitor-file-sharer';

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 base64 문자열이거나 data:application/pdf;base64,....

await FileSharer.share({
filename: 'export.zip',
contentType: 'application/zip',
path: fileUri,
});

native implementations는 local paths, file:// URLs, Android content:// URIs, 및 Capacitor _capacitor_file_ URLs.

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 save directories는 downloads, pictures, movies, music, 및 documents. Android 10 이상의 경우 플러그인은 MediaStore를 통해 쓰고, Android 9 이하의 경우 manifest를 사용합니다. WRITE_EXTERNAL_STORAGE 권한이 maxSdkVersion=28.

파일과 함께 텍스트 공유하기

파일과 함께 텍스트 공유하기 섹션 제목
await FileSharer.share({
filename: 'photo.jpg',
contentType: 'image/jpeg',
path: photoUri,
title: 'Site photo',
subject: 'Photo export',
text: 'Captured during inspection.',
});

text API로 전달됩니다. EXTRA_TEXT 안드로이드에서는 및 iOS에서 두 번째 액티비티 아이템으로 전달됩니다.

export interface ShareFileOptions {
filename: string;
base64Data?: string;
path?: string;
contentType?: string;
text?: string;
title?: string;
subject?: string;
android?: AndroidFileSharerOptions;
}
export interface AndroidFileSharerOptions {
chooserTitle?: string;
saveDirectory?: 'downloads' | 'pictures' | 'movies' | 'music' | 'documents';
relativePath?: string;
}
export interface SaveFileResult {
uri?: string;
}
  • ERR_PARAM_NO_FILENAME - filename __CAPGO_KEEP_0__이 누락되거나 비어 있습니다.
  • ERR_PARAM_NO_DATA - 하나도 base64Datapath __CAPGO_KEEP_1__이 제공되지 않았습니다.
  • ERR_PARAM_DATA_INVALID - base64 입력이 디코딩되지 못했습니다.
  • ERR_LOCAL_FILE_NOT_FOUND - 제공된 로컬 경로 또는 콘텐츠 URI가 열리지 못했습니다.
  • ERR_FILE_CACHING_FAILED - 네이티브 임시 파일이 작성되지 못했습니다.
  • ERR_FILE_SAVE_FAILED - Android가 공공 저장소에 파일을 저장하지 못했습니다.
  • ERR_ACTIVITY_NOT_FOUND - 안드로이드는 공유 대상이 열리지 못했습니다.
  • USER_CANCELLED - iOS 공유 시트가 완료되지 않고 닫혔습니다.

이 페이지는 플러그인의 src/definitions.ts. upstream에서 pubic API이 변경되었을 때 다시 싱크를 실행하세요.

Capacitor를 사용하는 경우 Getting Started 저장소와 파일 처리를 계획하고 싶다면 @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-file-sharer와 연결하세요. Using @capgo/capacitor-file-sharer capgo/capacitor-file-sharer capgo/capacitor-data-storage-sqlite capgo/capacitor-data-storage-sqlite Using capgo/capacitor-data-storage-sqlite capgo/capacitor-data-storage-sqlite capgo/capacitor-file capgo/capacitor-file Using capgo/capacitor-file capgo/capacitor-file