Iniziare
Copia un promemoria di configurazione con i passaggi di installazione e la guida markdown completa per questo 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.
Installa
Sezione intitolata “Installa”Puoi utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo competenze al tuo strumento AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi utilizza la seguente richiesta:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-storage` plugin in my project.Se preferisci la configurazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche del tuo platform:
bun add @capgo/capacitor-firebase-storagebunx cap syncImporta
Sezione intitolata “Importa”import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';API Panoramica
Sezione intitolata “API Panoramica”deleteFile
Sezione intitolata “eliminaFile”Elimina un file.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.deleteFile({} as DeleteFileOptions);getDownloadUrl
Sezione intitolata “getDownloadUrl”Ottieni l'URL di download per un file.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.getDownloadUrl({} as GetDownloadUrlOptions);getMetadata
Sezione intitolata “getMetadata”Ottieni i metadati per un file.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.getMetadata({} as GetMetadataOptions);listFiles
Sezione intitolata “listFiles”Elencare i file in un directory.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.listFiles({} as ListFilesOptions);updateMetadata
Sezione intitolata “updateMetadata”Aggiornare i metadati per un file.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.updateMetadata({} as UpdateMetadataOptions);uploadFile
Sezione intitolata “uploadFile”Caricare un file.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.uploadFile({} as UploadFileOptions, {} as UploadFileCallback);useEmulator
Sezione intitolata “useEmulator”Instrumentare l'app per comunicare con l'emulatore di Cloud Storage.
Su Android, deve essere consentito il traffico chiaro. Sulla Capacitor configurazione:
{ server: { cleartext: true }}Il traffico in chiaro non è destinato all'uso in produzione.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.useEmulator({} as UseEmulatorOptions);Riferimento di tipo
Sezione intitolata “Riferimento di tipo”DeleteFileOptions
Sezione intitolata “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
Sezione intitolata “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
Sezione intitolata “GetDownloadUrlResult”export interface GetDownloadUrlResult { /** * The download url for the file. * * @since 5.3.0 */ downloadUrl: string;}GetMetadataOptions
Sezione intitolata “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
Sezione intitolata “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
Sezione intitolata “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
Sezione intitolata “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
Sezione intitolata “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
Sezione intitolata “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
Sezione intitolata “UploadFileCallback”export type UploadFileCallback = (event: UploadFileCallbackEvent | null, error: any) => void;CallbackId
Sezione intitolata “CallbackId”export type CallbackId = string;UseEmulatorOptions
Sezione intitolata “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;}Fonte di Verità
Sezione intitolata “Fonte di Verità”Questa pagina è generata dal plugin’s src/definitions.ts. Riavvia la sincronizzazione quando il pubblico API cambia upstream.
Continua da Iniziare
Sezione intitolata “Continua da Iniziare”Se stai utilizzando Inizio per pianificare lo storage e il trattamento dei file, connettilo con @capgo/capacitor-archiviazione-dati-sqlite per i dettagli di implementazione in @capgo/capacitor-archiviazione-dati-sqlite, Utilizzare @capgo/capacitor-archiviazione-dati-sqlite per la capacità nativa in Utilizzare @capgo/capacitor-archiviazione-dati-sqlite, @capgo/capacitor-file per i dettagli di implementazione in @capgo/capacitor-file, Utilizzare @capgo/capacitor-file per la capacità nativa in Utilizzare @capgo/capacitor-file, e @capgo/capacitor-uploader per i dettagli di implementazione in @capgo/capacitor-uploader.