Inicio rápido
Copie una solicitud de configuración con los pasos de instalación y la guía de markdown completa para este complemento.
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.
Instalar
Sección titulada “Instalar”Puede utilizar nuestra configuración asistida por inteligencia artificial para instalar el complemento. Agregue las Capgo habilidades a su herramienta de inteligencia artificial utilizando el siguiente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLuego utilice el siguiente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-storage` plugin in my project.Si prefiere la configuración manual, instale el complemento ejecutando los siguientes comandos y siguiendo las instrucciones específicas de la plataforma a continuación:
bun add @capgo/capacitor-firebase-storagebunx cap syncImportar
Sección titulada “Importar”import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';API Resumen
Sección titulada “API Resumen”deleteFile
Sección titulada “eliminarArchivo”Eliminar un archivo.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.deleteFile({} as DeleteFileOptions);getDownloadUrl
Sección titulada “obtenerUrlDescarga”Obtener la URL de descarga para un archivo.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.getDownloadUrl({} as GetDownloadUrlOptions);getMetadata
Sección titulada “obtenerMetadata”Obtener la metadata para un archivo.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.getMetadata({} as GetMetadataOptions);listFiles
Sección titulada “listFiles”Listar archivos en un directorio.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.listFiles({} as ListFilesOptions);updateMetadata
Sección titulada “updateMetadata”Actualizar los metadatos de un archivo.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.updateMetadata({} as UpdateMetadataOptions);uploadFile
Sección titulada “uploadFile”Subir un archivo.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.uploadFile({} as UploadFileOptions, {} as UploadFileCallback);useEmulator
Sección titulada “useEmulator”Instrumentar tu aplicación para comunicarse con el emulador de almacenamiento en la nube.
En Android, se debe permitir el tráfico de texto claro. En la configuración Capacitor:
{ server: { cleartext: true }}El tráfico en claro no está destinado para su uso en producción.
import { FirebaseStorage } from '@capgo/capacitor-firebase-storage';
await FirebaseStorage.useEmulator({} as UseEmulatorOptions);Referencia de tipos
Sección titulada “Referencia de tipos”DeleteFileOptions
Sección titulada “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
Sección titulada “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
Sección titulada “GetDownloadUrlResult”export interface GetDownloadUrlResult { /** * The download url for the file. * * @since 5.3.0 */ downloadUrl: string;}GetMetadataOptions
Sección titulada “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
Sección titulada “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
Sección titulada “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
Sección titulada “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
Sección titulada “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
Sección titulada “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
Sección titulada “UploadFileCallback”export type UploadFileCallback = (event: UploadFileCallbackEvent | null, error: any) => void;CallbackId
Sección titulada “CallbackId”export type CallbackId = string;UseEmulatorOptions
Sección titulada “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;}Fuente de Verdad
Sección titulada “Fuente de Verdad”Esta página se genera desde el plugin’s src/definitions.ts. Re-ejecutar la sincronización cuando el público API cambia upstream.
Sigue adelante desde Getting Started
Sección titulada “Sigue adelante desde Getting Started”Si estás utilizando Iniciación para planificar el almacenamiento y el manejo de archivos, conectarlo con @capgo/capacitor-almacenamiento-de-datos-sqlite para los detalles de implementación en @capgo/capacitor-almacenamiento-de-datos-sqlite, Usando @capgo/capacitor-almacenamiento-de-datos-sqlite para la capacidad nativa en Usando @capgo/capacitor-almacenamiento-de-datos-sqlite, @capgo/capacitor-archivo para los detalles de implementación en @capgo/capacitor-archivo, Usando @capgo/capacitor-archivo para la capacidad nativa en Usando @capgo/capacitor-archivo, y @capgo/capacitor-subidor para los detalles de implementación en @capgo/capacitor-subidor.