メインコンテンツへスキップ
@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ベースの一時ファイルとローカルパスによる直接共有の両方をサポートしています。
  • Webでの共有と保存はファイルをダウンロードし、大容量ファイルにはチャンク分割されたbase64変換を使用します。

リファレンス全文

「@capgo/capacitor-file-sharer の使用方法」から続ける

使用している場合 @capgo/capacitor-file-sharer の使い方 ストレージとファイル処理を計画するには、以下と連携してください: @capgo/capacitor-file-sharer @capgo/capacitor-file-sharer の実装詳細については、 スタートガイド スタートガイドの実装詳細については、 @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" からインポートしてください。

@capgo/capacitor-file-sharer は React、Vue、Angular で動作しますか?

はい。File Sharer は Capacitor パッケージなので、Ionic、React、Vue、Angular、Svelte、素の JavaScript など、Capacitor 上で動くあらゆる Web フレームワークで使えます。

@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から無料でインストールできます。バグ報告やプルリクエストも歓迎しています。

App Storeの審査なしで、File Sharerを使っているcodeをアップデートできますか?

プラグインのインストールやアップグレードはネイティブの code を変更するため、新しいストアビルドが必要です。その後は、プラグインを呼び出す JavaScript、HTML、CSS の変更を Capgo Live Updates で即座に配信できます。

アプリの審査を待たずに File Sharer の変更をリリース

プラグインをストア用ビルドに組み込めば、Capgo live updates で JavaScript、HTML、CSS の変更を数分でユーザーに配信できます

Capgo から始める