メインコンテンツにスキップ
@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/capacitor-asset-cacheを使用して

@capgo/capacitor-asset-cache アプリ所有の永続ストレージに大規模なCDN画像とビデオを保存し、CapacitorのWebビュー用にローカルソース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');
}

- native fetchが実行されるとき、ローカルソースのURLを受け取り、 data-asset-cache-state="loading" - 保護されたアセット ready.

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

- プラグインはリモートファイルをフェッチまたは再検証するときにヘッダーを送信します。ウェブ要素はローカルソースのURLのみを受け取ります。

-

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

CDNベースURLなし

__CAPGO_KEEP_0__を使用する場合、絶対URLを指定してください cdnUrl.

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

相対パスは、CDNベースURLを設定した場合または呼び出しごとに設定した場合にのみ機能します cdnUrl CDNベースURLを設定しない場合、または呼び出しごとに設定する場合 cdnUrl.

ストレージに関する注意

iOSでは、ファイルはアプリケーションサポートディレクトリ下にあり、iCloudバックアップから除外されます。 Androidでは、ファイルはアプリ内ファイルディレクトリ下にあります。システムは、これらのファイルを廃棄可能なキャッシュファイルとして扱いませんが、アンインストール、データクリア、 clear()、ファイルは削除されます。 remove() 完全なリファレンス

__CAPGO_KEEP_0__:

Capgoから@capgo/capacitor-asset-cacheを継続して使用

Capgoを使用している場合 Using @capgo/capacitor-asset-cache persistent media loading を計画するには、接続する @capgo/capacitor-asset-cacheの実装詳細については CapgoのGetting Started @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-downloaderを使用して明示的なバックグラウンドダウンロードを実行し CapgoのGetting Started @capgo/capacitor-fileを使用して一般的なローカルファイルアクセス @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-asset-cacheを使用してください @capgo/capacitor-asset-cacheの詳細については Capgoのドキュメントを参照してください

FAQ

アセット キャッシュ プラグイン FAQ

アセット キャッシュ プラグインを Capacitor アプリにどのようにインストールしますか?

Run &quot;bun add @capgo/capacitor-asset-cache&quot; (or &quot;npm install @capgo/capacitor-asset-cache&quot;), then run &quot;bunx cap sync&quot; so the iOS and Android projects pick up the native code. Import it from &quot;@capgo/capacitor-asset-cache&quot; in your app code.

React、Vue、Angular と @capgo/capacitor-asset-cache はどのように関係していますか?

Yes. Asset Cache is a Capacitor package, so it works with any web framework that runs inside Capacitor, including Ionic, React, Vue, Angular, Svelte and plain JavaScript.

どの Capacitor バージョンが @capgo/capacitor-asset-cache に対応していますか?

Capgo plugins follow Capacitor&#39;s major version: use the plugin major version that matches your Capacitor major version (for example plugin v8 with Capacitor 8). The compatibility table in the GitHub README lists the maintained versions.

@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 をアップデートするには App Store のレビューが必要ですか?

プラグインをインストールまたはアップグレードするとネイティブ code が変更されるため、ストアのビルドが必要になります。その後、JavaScript、HTML、CSS の変更がプラグインを呼び出すと Capgo のライブ アップデートで即時配信できます。

アプリレビューの待たずにアセットキャッシュの変更を配信

プラグインがストアビルドに追加された後、Capgoライブアップデートにより、JavaScript、HTML、CSSの変更がユーザーに数分で反映されます。

Start with Capgo