メインコンテンツへスキップ

スタートガイド

GitHub

AIアシストによるセットアップでプラグインをインストールできます。以下のコマンドを使用して、お使いのAIツールに Capgo のスキルを追加してください:

ターミナル
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

次に、以下のプロンプトを使用します:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-file-sharer` plugin in my project.

手動セットアップを希望する場合は、以下のコマンドを実行してプラグインをインストールし、下記のプラットフォーム別の手順に従ってください:

ターミナル
npm install @capgo/capacitor-file-sharer
npx cap sync
import { FileSharer } from '@capgo/capacitor-file-sharer';
import { FileSharer } from '@capgo/capacitor-file-sharer';
await FileSharer.share({
filename: 'report.pdf',
contentType: 'application/pdf',
base64Data: reportBase64,
});
import { FileSharer } from '@capgo/capacitor-file-sharer';
const result = await FileSharer.save({
filename: 'report.pdf',
contentType: 'application/pdf',
base64Data: reportBase64,
});
console.log(result);
  • ネイティブ同期: 実行 npx cap sync プラグインのアップグレード後。
  • 信頼できる情報源: 信頼 src/definitions.ts GitHub リポジトリ内。
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 URLの形式になります: data:application/pdf;base64,....

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

ネイティブ実装では、ローカルパスを受け付けます。 file:// URL、Android content:// URI、および Capacitor _capacitor_file_ URL。

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 の保存ディレクトリは downloads, pictures, movies, musicや documentsです。Android 10 以降では、プラグインは MediaStore 経由で書き込みます。Android 9 以下では、公開保存では、マニフェストの 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 として渡されます EXTRA_TEXT Androidではそのまま、iOSでは2つ目のアクティビティ項目として渡されます。

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 が未指定か空です。
  • ERR_PARAM_NO_DATA - base64Data も path 指定されていません。
  • ERR_PARAM_DATA_INVALID - base64入力のデコードに失敗しました。
  • ERR_LOCAL_FILE_NOT_FOUND - 指定されたローカルパスまたはcontent URIを開けませんでした。
  • ERR_FILE_CACHING_FAILED - ネイティブの一時ファイルへの書き込みに失敗しました。
  • ERR_FILE_SAVE_FAILED - Androidでファイルをパブリックストレージに保存できませんでした。
  • ERR_ACTIVITY_NOT_FOUND - Androidで共有先を開けませんでした。
  • USER_CANCELLED - iOSのシェアシートが完了せずに閉じられました。

このページでは、プラグインの src/definitions.tsから生成されています。upstream で公開 API が変更されたら、再度 sync を実行してください。

Getting Startedの続きを進める

「Getting Started からの続き」セクション

使用している場合 スタートガイド ストレージとファイル処理を計画するには、以下と連携してください: @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 の実装の詳細については、 @capgo/capacitor-file の使い方 @capgo/capacitor-file. の使い方で扱うネイティブ機能については