Prise en main
Copiez un prompt de configuration incluant les étapes d'installation et le guide markdown complet pour ce plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-firebase-storage`
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/firebase-storage/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.
Installer
Section intitulée « Installation »Vous pouvez utiliser notre configuration assistée par IA pour installer le plugin. Ajoutez les skills Capgo à votre outil d'IA avec la commande suivante :
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUtilisez ensuite le prompt suivant :
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-storage` plugin in my project.Si vous préférez une installation manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à chaque plateforme ci-dessous :
bun add @capgo/capacitor-firebase-storagenpx cap syncImporter
Section intitulée « Import »import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';Démarrage rapide
Section intitulée « Démarrage rapide »import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.deleteFile({ path: 'mountains.png' });Exemple : getDownloadUrl
Section intitulée « Exemple : getDownloadUrl »import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
const result = await FirebaseStorage.getDownloadUrl({ path: 'mountains.png' });console.log(result);Exemple : getMetadata
Section intitulée « Exemple : getMetadata »import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
const result = await FirebaseStorage.getMetadata({ path: 'mountains.png' });console.log(result);Erreurs courantes
Section intitulée « Erreurs courantes »- Sync native : exécuter
npx cap syncaprès les mises à jour du plugin. - Source de vérité : fiez-vous
src/definitions.tsau repo GitHub.
Aperçu de API
Section intitulée « Aperçu API »deleteFile
Section intitulée « deleteFile »Supprimer un fichier.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.deleteFile({ path: 'mountains.png' });getDownloadUrl
Section intitulée « getDownloadUrl »Récupérer l'URL de téléchargement d'un fichier.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
const result = await FirebaseStorage.getDownloadUrl({ path: 'mountains.png' });console.log(result);getMetadata
Section intitulée « getMetadata »Récupérer les métadonnées d'un fichier.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
const result = await FirebaseStorage.getMetadata({ path: 'mountains.png' });console.log(result);listFiles
Section intitulée « listFiles »Lister les fichiers d'un répertoire.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
const result = await FirebaseStorage.listFiles({ path: 'path/to/file' });// The result holds sensitive values: use it without logging it.updateMetadata
Section intitulée « updateMetadata »Mettre à jour les métadonnées d'un fichier.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.updateMetadata({ path: 'path/to/file', metadata: {},});uploadFile
Section intitulée « uploadFile »Envoyer un fichier.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
const result = await FirebaseStorage.uploadFile({ path: 'mountains.png' }, (event, error) => { console.log(event);});console.log(result);useEmulator
Section intitulée « useEmulator »Instrumenter votre application pour communiquer avec l'émulateur Cloud Storage.
Sur Android, le trafic en clair doit être autorisé. Dans la configuration Capacitor :
{ server: { cleartext: true }}Le trafic en clair n'est pas destiné à un usage en production.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.useEmulator({ host: "127.0.0.1" });Référence de type
Section intitulée « Référence de type »DeleteFileOptions
Section intitulée « DeleteFileOptions »export interface DeleteFileOptions { /** * The full path to the file to delete, including the file name. * * @since 5.3.0 * @example 'mountains.png' * @example 'images/mountains.png' */ path: string;}GetDownloadUrlOptions
Section intitulée « GetDownloadUrlOptions »export interface GetDownloadUrlOptions { /** * The full path to the file to get the download url for, including the file name. * * @since 5.3.0 * @example 'mountains.png' * @example 'images/mountains.png' */ path: string;}GetDownloadUrlResult
Section intitulée « GetDownloadUrlResult »export interface GetDownloadUrlResult { /** * The download url for the file. * * @since 5.3.0 */ downloadUrl: string;}GetMetadataOptions
Section intitulée « GetMetadataOptions »export interface GetMetadataOptions { /** * The full path to the file to get the metadata for, including the file name. * * @since 5.3.0 * @example 'mountains.png' * @example 'images/mountains.png' */ path: string;}GetMetadataResult
Section intitulée « GetMetadataResult »export interface GetMetadataResult { /** * The bucket this file is contained in. * * @since 5.3.0 */ bucket: string; /** * The timestamp at which the file was created in milliseconds since the epoch. * * @since 5.3.0 * @example 1697304435933 */ createdAt?: number; /** * The object's generation. * * @since 5.3.0 * @see https://cloud.google.com/storage/docs/metadata#generation-number */ generation: string; /** * The md5 hash of the file. * * @since 5.3.0 */ md5Hash?: string; /** * The object's metadata generation. * * @since 5.3.0 * @see https://cloud.google.com/storage/docs/metadata#generation-number */ metadataGeneration: string; /** * The short name of this file, which is the last component of the full path. * * @since 5.3.0 * @example 'mountains.png' */ name?: string; /** * The full path to the file, including the file name. * * @since 5.3.0 * @example 'images/mountains.png' */ path?: string; /** * The size of the file in bytes. * * @since 5.3.0 */ size: number; /** * The timestamp at which the file was last updated in milliseconds since the epoch. * * @since 5.3.0 * @example 1697304435933 */ updatedAt: number; /** * Served as the `Cache-Control` header on object download. * * @since 6.1.0 */ cacheControl?: string; /** * Served as the `Content-Disposition` header on object download. * * @since 6.1.0 */ contentDisposition?: string; /** * Served as the `Content-Encoding` header on object download. * * @since 6.1.0 */ contentEncoding?: string; /** * Served as the `Content-Language` header on object download. * * @since 6.1.0 */ contentLanguage?: string; /** * Served as the `Content-Type` header on object download. * * @since 6.1.0 */ contentType?: string; /** * Additional user-defined custom metadata. * * @since 6.1.0 */ customMetadata?: { [key: string]: string };}ListFilesOptions
Section intitulée « ListFilesOptions »export interface ListFilesOptions { /** * The full path to the directory to list files for. * * @since 5.3.0 */ path: string; /** * The maximum number of results to return. * * @since 5.3.0 * @default 1000 */ maxResults?: number; /** * The page token, returned by a previous call to this method. * If provided, listing is resumed from the previous position. * * @since 5.3.0 */ pageToken?: string;}ListFilesResult
Section intitulée « ListFilesResult »export interface ListFilesResult { /** * The list of files in the directory. * * @since 5.3.0 */ items: StorageReference[]; /** * If set, there might be more results for this list. * Use this token to resume the list. * * @since 5.3.0 */ nextPageToken?: string;}UpdateMetadataOptions
Section intitulée « UpdateMetadataOptions »export interface UpdateMetadataOptions { /** * The full path to the file to update the metadata for, including the file name. * * @since 5.3.0 */ path: string; /** * The metadata to update. * * @since 5.3.0 */ metadata: SettableMetadata;}UploadFileOptions
Section intitulée « UploadFileOptions »export interface UploadFileOptions { /** * The data to upload. * * Only available for Web. * * @since 5.3.0 */ blob?: Blob; /** * The full path where data should be uploaded, including the file name. * * @since 5.3.0 * @example 'mountains.png' * @example 'images/mountains.png' */ path: string; /** * The uri to the file to upload. * * Only available for Android and iOS. * * @since 5.3.0 * @example 'content://com.google.android.apps.photos.contentprovider/-1/1/content://media/external/images/media/1000000214/ORIGINAL/NONE/image/.png/mountains' * @example 'file:///var/mobile/Containers/Data/Application/E397A70D-67E4-4258-236E-W1D9E12111D4/Library/Caches/092F8464-DE60-40B3-8A23-EB83160D9F9F/mountains.png' */ uri?: string; /** * The metadata to set for the file. * * @since 5.4.0 */ metadata?: UploadMetadata;}UploadFileCallback
Section intitulée « UploadFileCallback »export type UploadFileCallback = (event: UploadFileCallbackEvent | null, error: any) => void;CallbackId
Section intitulée « CallbackId »export type CallbackId = string;UseEmulatorOptions
Section intitulée « UseEmulatorOptions »export interface UseEmulatorOptions { /** * The emulator host without any port or scheme. * * Note when using a Android Emulator device: 10.0.2.2 is the special IP address to connect to the 'localhost' of the host computer. * * @since 6.1.0 * @example "127.0.0.1" */ host: string; /** * The emulator port. * * @since 6.1.0 * @default 9199 * @example 9199 */ port?: number;}Source de vérité
Section intitulée « Source de vérité »Cette page est générée à partir de src/definitions.ts. Relancez la synchronisation lorsque l’API public change en amont.
Continuer depuis Getting Started
Section intitulée « Continuer après Prise en main »Si vous utilisez Prise en main pour planifier le stockage et la gestion des fichiers, connectez-l’à @capgo/capacitor-data-storage-sqlite pour les détails d'implémentation dans @capgo/capacitor-data-storage-sqlite, Utiliser @capgo/capacitor-data-storage-sqlite pour la capacité native dans Utiliser @capgo/capacitor-data-storage-sqlite @capgo/capacitor-file pour les détails d'implémentation dans @capgo/capacitor-file, Utiliser @capgo/capacitor-file pour la capacité native dans Utiliser @capgo/capacitor-file, et @capgo/capacitor-uploader pour les détails d'implémentation dans @capgo/capacitor-uploader.