메인 콘텐츠로 건너뛰기
@capgo/capacitor-어셋 캐시 파일 및 저장소 오픈 소스

어셋 캐시 Capacitor 플러그인

영구 앱 저장소에서 캐시 CDN 이미지를 비디오로 바인딩

설치

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

사용자 가이드

Capacitor에서 __CAPGO_KEEP_1__-캐시 사용 방법

capgo/capacitor-캐시 사용

@capgo/capacitor-asset-cache Capacitor에서 큰 CDN 이미지를 비디오를 앱 소유의 영구 저장소에 저장하고, Capacitor 웹뷰에서 지역 소스 URL을 반환합니다.

설치

npm install @capgo/capacitor-asset-cache
npx cap sync

이 플러그인이 노출하는 항목

  • bind - 로컬 자산 소스에 이미지 또는 비디오 요소를 연결하고 준비되면 업데이트합니다.
  • src - 자산이 로컬로 존재하는 후에 로컬 소스 문자열을 반환합니다.
  • resolve - 로컬 소스에 캐시 메타데이터를 포함한 로컬 소스를 반환합니다.
  • configure - 기본 CDN 및 재검증 동작을 설정합니다.
  • get, list, remove, clear, and getCacheSize - 예시 사용법

- CDN을 한 번만 구성하고 상대 경로로 요소를 바인딩하세요.

- 요소는

import { AssetCache } from '@capgo/capacitor-asset-cache';

AssetCache.configure({
  cdnUrl: 'https://cdn.example.com/assets/',
  revalidate: {
    strategy: 'ttl',
    maxAgeSeconds: 86400,
  },
});

const hero = document.querySelector<HTMLImageElement>('#hero');

if (hero) {
  AssetCache.bind(hero, 'images/hero.jpg');
}

- 네이티브 fetch가 실행되는 동안, 그리고 로컬 소스 URL을 받고 data-asset-cache-state="loading" - 보호된 자산 ready.

img[data-asset-cache-state='loading'],
video[data-asset-cache-state='loading'] {
  opacity: 0.45;
}

- 플러그인은 원격 파일을 가져오거나 재검증할 때 헤더를 전송합니다. 웹 요소는 여전히 로컬 소스 URL만 받습니다.

- 플러그인은 원격 파일을 가져오거나 재검증할 때 헤더를 전송합니다. 웹 요소는 여전히 로컬 소스 URL만 받습니다.

const src = await AssetCache.src('private/videos/intro.mp4', {
  cdnUrl: 'https://cdn.example.com/assets/',
  headers: {
    Authorization: `Bearer ${token}`,
  },
});

CDN URL이 없을 경우

설정하지 않으려면 절대 URL을 전달하세요 cdnUrl.

const src = await AssetCache.src('https://cdn.example.com/assets/videos/intro.mp4');

상대 경로는 설정된 CDN URL이 있거나 cdnUrl 또는 cdnUrl.

저장소 설명

iOS에서 파일은 Application Support 하위에 존재하고 iCloud 백업에서 제외됩니다. Android에서 파일은 앱 내부 파일 디렉토리 하위에 존재합니다. 시스템은 이러한 파일을 임시 캐시 파일로 취급하지 않으며, 앱을 삭제하거나, 앱 데이터를 초기화하면 clear(), remove() 그리고

삭제됩니다.

Using @capgo/capacitor-asset-cache

만약에 Using @capgo/capacitor-asset-cache 영구적인 미디어 로딩을 계획하기 위해 사용하는 경우 @capgo/capacitor-자산 캐시 implementation details를 참조하세요. Getting Started implementation details를 참조하세요. @capgo/capacitor-다운로더 explicit background downloads를 위해 @capgo/capacitor-파일 일반적인 로컬 파일 접근을 위해

FAQ

Asset Cache 플러그인 FAQ

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

Run &quot;bun add @capgo/capacitor-asset-cache&quot; (또는 &quot;npm install @capgo/capacitor-asset-cache&quot;), 그리고 &quot;bunx cap sync&quot; 명령어를 실행하여 iOS와 Android 프로젝트가 네이티브 code를 인식하도록 하세요. 그리고 앱 code에서 &quot;@capgo/capacitor-asset-cache&quot;를 임포트하세요.

React, Vue 및 Angular과 함께 @capgo/capacitor-asset-cache가 작동하나요?

네. Asset Cache는 Capacitor 패키지이므로, Ionic, React, Vue, Angular, Svelte 및 일반 JavaScript와 같은 웹 프레임워크가 Capacitor 내에서 실행되는 경우에 작동합니다.

어떤 Capacitor 버전이 @capgo/capacitor-asset-cache를 지원하나요?

Capgo 플러그인은 Capacitor의 메이저 버전을 따릅니다. 예를 들어, 플러그인 v8과 Capacitor 8이면, 플러그인 메이저 버전이 Capacitor 메이저 버전과 일치해야 합니다. GitHub README에서 제공하는 호환성 표를 참조하세요.

@capgo/capacitor-asset-cache는 무료이고 오픈 소스인가요?

Yes. The source code is public on GitHub at https://github.com/Cap-go/capacitor-asset-cache/ and the package is free to install from npm. Bug reports and pull requests are welcome.

code가 Asset Cache를 사용하는 경우 App Store 리뷰 없이 업데이트가 가능한가요?

code를 업데이트하거나 플러그인을 설치하면 네이티브 code가 변경되므로, 새로운 스토어 빌드를 생성해야 합니다. 그 후에 JavaScript, HTML 및 CSS 변경 사항이 플러그인을 호출하는 경우 Capgo Live Update를 통해 즉시 배포할 수 있습니다.

앱 리뷰 기다리지 않고 Asset Cache 변경을 배포

플러그인이 스토어 빌드에 포함되면 Capgo live updates는 사용자에게 몇 분 안에 JavaScript, HTML 및 CSS 변경을 푸시합니다.

Capgo 시작