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

파일 Capacitor 플러그인

파일과 디렉토리를 읽고 쓰고 관리할 수 있는 모든 기능을 갖춘 파일 시스템 플러그인

설치

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

가이드

Capacitor에서 File 플러그인 사용법

@capgo/capacitor-file 사용하기

Capacitor File 플러그인은 Cordova File 플러그인과 유사한 파일 시스템 작업을 구현합니다.

설치

bun add @capgo/capacitor-file
bunx cap sync

bunx cap sync 플러그인의 네이티브 code를 네이티브 프로젝트로 복사합니다. 플러그인을 업그레이드할 때마다 다시 실행하세요.

가져오기

import { CapacitorFile } from '@capgo/capacitor-file';

API 한눈에 보기

메서드 설명
requestFileSystem 파일 시스템을 요청합니다.
resolveLocalFileSystemURL 파일 URL을 엔트리로 변환합니다.
getFile 파일 엔트리를 가져옵니다.
getDirectory 디렉토리 엔트리를 가져옵니다.
readFile 파일을 텍스트 또는 base64로 읽습니다.
readAsDataURL 파일을 data URL(MIME 타입 접두사가 포함된 base64)로 읽습니다.
writeFile 파일에 데이터를 씁니다.
appendFile 파일에 데이터를 추가합니다.
deleteFile 파일을 삭제합니다.
mkdir 디렉토리를 생성합니다.
rmdir 디렉토리를 삭제합니다.
readdir 디렉토리 내용을 읽습니다.
stat 파일 또는 디렉토리의 메타데이터를 가져옵니다.
getMetadata 파일 또는 디렉토리의 메타데이터를 가져옵니다. stat()의 별칭입니다.
rename 파일 또는 디렉토리의 이름을 변경하거나 이동합니다.
move 파일 또는 디렉토리를 이동합니다. rename()의 별칭입니다.
copy 파일 또는 디렉토리를 복사합니다.
exists 파일 또는 디렉토리가 존재하는지 확인합니다.
getUri 파일의 URI를 가져옵니다.
truncate 파일을 지정된 크기로 자릅니다.
getDirectories 알려진 모든 파일 시스템 디렉토리를 가져옵니다.
getFreeDiskSpace 사용 가능한 디스크 공간을 바이트 단위로 가져옵니다.
checkPermissions 파일 작업에 대한 현재 권한 상태를 확인합니다. Android에서는 외부 저장소 권한을 확인하며, iOS 및 웹에서는 별도의 권한이 필요하지 않으므로 항상 'granted'를 반환합니다.
requestPermissions 파일 작업 권한을 요청합니다. Android에서는 앱의 프라이빗 디렉토리 외부 파일에 접근하는 데 필요한 외부 저장소 권한을 요청합니다. iOS 및 웹에서는 별도의 권한이 필요하지 않으므로 항상 'granted'를 반환합니다.

예제

requestFileSystem()

파일 시스템을 요청합니다.

import { CapacitorFile, FileSystemType } from '@capgo/capacitor-file';

const result = await CapacitorFile.requestFileSystem({ type: FileSystemType.TEMPORARY });
console.log(result);

resolveLocalFileSystemURL()

파일 URL을 엔트리로 변환합니다.

import { CapacitorFile } from '@capgo/capacitor-file';

const result = await CapacitorFile.resolveLocalFileSystemURL({ url: 'https://example.com' });
console.log(result);

getFile()

파일 엔트리를 가져옵니다.

import { CapacitorFile } from '@capgo/capacitor-file';

const result = await CapacitorFile.getFile({ path: 'path/to/file' });
console.log(result);

getDirectory()

디렉토리 엔트리를 가져옵니다.

import { CapacitorFile } from '@capgo/capacitor-file';

const result = await CapacitorFile.getDirectory({ path: 'path/to/file' });
console.log(result);

readFile()

파일을 텍스트 또는 base64로 읽습니다.

import { CapacitorFile } from '@capgo/capacitor-file';

const result = await CapacitorFile.readFile({ path: 'path/to/file' });
console.log(result);

readAsDataURL()

파일을 data URL(MIME 타입 접두사가 포함된 base64)로 읽습니다.

import { CapacitorFile } from '@capgo/capacitor-file';

const result = await CapacitorFile.readAsDataURL({ path: 'path/to/file' });
console.log(result);

위 표에는 24개의 핵심 메서드가 나열되어 있습니다. Listener 및 버전 헬퍼, 그리고 각 메서드의 전체 계약(contract)에 대한 상세 내용은 다음 문서를 참조하세요: GitHub 리포지토리.

이벤트 수신

addListener 핸들을 반환합니다. 다음을 호출하세요: handle.remove() 화면이 언마운트될 때, 또는 CapacitorFile.removeAllListeners() 모든 리스너를 해제하려면.

전체 레퍼런스

@capgo/capacitor-file 사용하기 단계부터 계속 진행하세요

사용 중인 경우 @capgo/capacitor-file 사용하기 스토리지와 파일 처리를 계획하려면, 다음과 연결하세요 @capgo/capacitor-file @capgo/capacitor-file의 구현 상세 내용은, 시작하기 시작하기 문서의 구현 상세 내용은, @capgo/capacitor-data-storage-sqlite @capgo/capacitor-data-storage-sqlite의 구현 상세 내용은, @capgo/capacitor-data-storage-sqlite 사용하기 @capgo/capacitor-data-storage-sqlite 사용 시의 네이티브 기능은, 그리고 @capgo/capacitor-uploader @capgo/capacitor-uploader.의 구현 상세 내용은

자주 묻는 질문

File 플러그인 FAQ

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

"bun add @capgo/capacitor-file"(또는 "npm install @capgo/capacitor-file")를 실행한 다음 "bunx cap sync"를 실행해 iOS와 Android 프로젝트가 네이티브 code를 인식하도록 하세요. 앱 code에서 "@capgo/capacitor-file"로부터 import하세요.

@capgo/capacitor-file가 React, Vue, Angular와 호환되나요?

네. File은 Capacitor 패키지이므로 Ionic, React, Vue, Angular, Svelte 및 순수 JavaScript를 포함해 Capacitor에서 실행되는 모든 웹 프레임워크와 호환됩니다.

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

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

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

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

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

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

앱 심사 대기 없이 파일 변경 사항을 즉시 배포하세요

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

Capgo부터 시작하세요