Erste Schritte
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses Plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-file-sharer`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/file-sharer/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installieren
Abschnitt „Installation“Du kannst unser KI-gestütztes Setup nutzen, um das Plugin zu installieren. Füge die Capgo Skills mit dem folgenden Befehl deinem KI-Tool hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsNutze dann diesen Prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-file-sharer` plugin in my project.Wenn du ein manuelles Setup bevorzugst, installiere das Plugin mit den folgenden Befehlen und befolge die plattformspezifischen Anweisungen unten:
npm install @capgo/capacitor-file-sharernpx cap syncImportieren
Abschnitt mit dem Titel „Import“import { FileSharer } from '@capgo/capacitor-file-sharer';Quickstart
Abschnitt „Quick start“import { FileSharer } from '@capgo/capacitor-file-sharer';
await FileSharer.share({ filename: 'report.pdf', contentType: 'application/pdf', base64Data: reportBase64,});Beispiel: Speichern
Abschnitt mit dem Titel „Beispiel: Speichern“import { FileSharer } from '@capgo/capacitor-file-sharer';
const result = await FileSharer.save({ filename: 'report.pdf', contentType: 'application/pdf', base64Data: reportBase64,});console.log(result);Häufige Stolperfallen
Abschnitt „Häufige Fallstricke“- Nativer Sync: ausführen
npx cap syncnach Plugin-Upgrades. - Single Source of Truth: Vertrauen
src/definitions.tsim GitHub Repo.
Base64-Datei teilen
Abschnitt mit dem Titel „Base64-Datei teilen“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 kann ein roher Base64-String oder eine Data-URL sein, wie zum Beispiel data:application/pdf;base64,....
Lokale Datei teilen
Abschnitt mit dem Titel „Lokale Datei teilen“await FileSharer.share({ filename: 'export.zip', contentType: 'application/zip', path: fileUri,});Die nativen Implementierungen akzeptieren lokale Pfade, file:// URLs, Android content:// URIs und Capacitor _capacitor_file_ URLs.
Datei speichern
Abschnitt mit dem Titel „Datei speichern“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-Speicherverzeichnisse sind downloads, pictures, movies, music, und documents. Ab Android 10 schreibt das Plugin über MediaStore. Bei Android 9 und älter nutzen öffentliche Speicherungen die Manifest- WRITE_EXTERNAL_STORAGE Berechtigung mit maxSdkVersion=28.
Text mit einer Datei teilen
Abschnitt mit dem Titel „Text mit einer Datei teilen“await FileSharer.share({ filename: 'photo.jpg', contentType: 'image/jpeg', path: photoUri, title: 'Site photo', subject: 'Photo export', text: 'Captured during inspection.',});text wird übergeben als EXTRA_TEXT auf Android und als zweites Activity-Item auf iOS.
Typreferenz
Abschnitt mit dem Titel „Typreferenz“ShareFileOptions
Abschnitt mit dem Titel „ShareFileOptions“export interface ShareFileOptions { filename: string; base64Data?: string; path?: string; contentType?: string; text?: string; title?: string; subject?: string; android?: AndroidFileSharerOptions;}AndroidFileSharerOptions
Abschnitt mit dem Titel „AndroidFileSharerOptions“export interface AndroidFileSharerOptions { chooserTitle?: string; saveDirectory?: 'downloads' | 'pictures' | 'movies' | 'music' | 'documents'; relativePath?: string;}SaveFileResult
Abschnitt mit dem Titel „SaveFileResult“export interface SaveFileResult { uri?: string;}Fehlercodes
Abschnitt „Error Codes“ERR_PARAM_NO_FILENAME-filenamefehlt oder ist leer.ERR_PARAM_NO_DATA- wederbase64Data- nochpathwurde bereitgestellt.ERR_PARAM_DATA_INVALID- base64-Input konnte nicht dekodiert werden.ERR_LOCAL_FILE_NOT_FOUND- der lokale Pfad oder die Content-URI konnte nicht geöffnet werden.ERR_FILE_CACHING_FAILED- die native temporäre Datei konnte nicht geschrieben werden.ERR_FILE_SAVE_FAILED- Android konnte die Datei nicht im öffentlichen Speicher speichern.ERR_ACTIVITY_NOT_FOUND- Android konnte kein Share-Target öffnen.USER_CANCELLED- das iOS Share Sheet wurde ohne Abschluss geschlossen.
Source of Truth
Abschnitt mit dem Titel „Source of Truth“Diese Seite dokumentiert die Plugin-Unterstützung src/definitions.ts. Führe den Sync erneut aus, wenn sich das öffentliche API upstream ändert.
Weiter geht's nach Getting Started
Abschnitt: „Weiter geht’s mit Getting Started“Wenn du es nutzt Erste Schritte um Speicher- und Dateiverwaltung zu planen, verbinde es mit Verwendung von @capgo/capacitor-file-sharer für die native Funktion bei der Nutzung von @capgo/capacitor-file-sharer, @capgo/capacitor-data-storage-sqlite für die Implementierungsdetails in @capgo/capacitor-data-storage-sqlite, Mit @capgo/capacitor-data-storage-sqlite für die native Funktionalität in „@capgo/capacitor-data-storage-sqlite verwenden“, @capgo/capacitor-file für das Implementierungsdetail in @capgo/capacitor-file und @capgo/capacitor-file verwenden für die native Funktion bei der Nutzung von @capgo/capacitor-file.