Primeros pasos
Copia un prompt de configuración con los pasos de instalación y la guía completa en markdown para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-photo-library`
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/photo-library/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 “Instalación”Puedes usar nuestro setup asistido por IA para instalar el plugin. Añade las skills de Capgo a tu herramienta de IA con el siguiente comando:
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLuego usa el siguiente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-photo-library` plugin in my project.Si prefieres la configuración manual, instala el plugin ejecutando los siguientes comandos y sigue las instrucciones específicas para cada plataforma a continuación:
bun add @capgo/capacitor-photo-librarybunx cap syncImportar
Sección titulada “Importar”import { PhotoLibrary } from '@capgo/capacitor-photo-library';Inicio rápido
Sección titulada “Inicio rápido”import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.checkAuthorization();console.log(result);Ejemplo: requestAuthorization
Sección titulada “Example: requestAuthorization”import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.requestAuthorization();console.log(result);Ejemplo: getAlbums
Sección titulada “Example: getAlbums”import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.getAlbums();console.log(result);Errores comunes
Sección titulada “Errores comunes”- Native sync: ejecutar
bunx cap synctras actualizar el plugin. - Fuente de verdad: confiar
src/definitions.tsen el repo de GitHub.
Resumen de API
Sección titulada “Descripción general de API”checkAuthorization
Sección titulada “checkAuthorization”Devuelve el estado de autorización actual sin mostrar un prompt al usuario.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.checkAuthorization();console.log(result);requestAuthorization
Sección titulada “requestAuthorization”Solicita acceso a la librería de fotos si es necesario.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.requestAuthorization();console.log(result);getAlbums
Sección titulada “getAlbums”Obtiene los álbumes disponibles.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.getAlbums();console.log(result);getLibrary
Sección titulada “getLibrary”Obtiene los assets de la librería junto con las URLs para mostrar en la web view.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.getLibrary();console.log(result);getPhotoUrl
Sección titulada “getPhotoUrl”Obtiene una URL visualizable de la versión en resolución completa del asset.
Si ya llamaste a getLibrary con includeFullResolutionData, normalmente
no necesitas este método.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.getPhotoUrl({ id: 'id-123' });console.log(result);getThumbnailUrl
Sección titulada “getThumbnailUrl”Obtiene una URL visualizable para una miniatura redimensionada del asset.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.getThumbnailUrl({ id: 'id-123' });console.log(result);pickMedia
Sección titulada “pickMedia”Abre el selector nativo del sistema para que el usuario elija archivos sin dar acceso total a la librería de fotos. Los archivos seleccionados se copian en el cache de la app y se devuelven con URLs portátiles.
import { PhotoLibrary } from '@capgo/capacitor-photo-library';
const result = await PhotoLibrary.pickMedia();console.log(result);Referencia de tipos
Sección titulada “Referencia de tipos”PhotoLibraryAuthorizationState
Sección titulada “PhotoLibraryAuthorizationState”export type PhotoLibraryAuthorizationState = 'authorized' | 'limited' | 'denied' | 'notDetermined';PhotoLibraryAlbum
Sección titulada “PhotoLibraryAlbum”export interface PhotoLibraryAlbum { id: string; title: string; assetCount: number;}GetLibraryOptions
Sección titulada “GetLibraryOptions”export interface GetLibraryOptions { /** * Number of assets to skip from the beginning of the query. */ offset?: number; /** * Maximum number of assets to return. Omit to return everything that matches. */ limit?: number; /** * Include images in the result. Defaults to `true`. */ includeImages?: boolean; /** * Include videos in the result. Defaults to `false`. */ includeVideos?: boolean; /** * Include information about the albums each asset belongs to. Defaults to `false`. */ includeAlbumData?: boolean; /** * Include assets stored in the cloud (iCloud / Google Photos). Defaults to `true`. */ includeCloudData?: boolean; /** * If `true`, use the original filenames reported by the OS when available. */ useOriginalFileNames?: boolean; /** * Width of the generated thumbnails. Defaults to `512`. */ thumbnailWidth?: number; /** * Height of the generated thumbnails. Defaults to `384`. */ thumbnailHeight?: number; /** * JPEG quality for generated thumbnails (0-1). Defaults to `0.5`. */ thumbnailQuality?: number; /** * When `true`, copies the full sized asset into the app cache and returns its URL. * Defaults to `false`. */ includeFullResolutionData?: boolean;}GetLibraryResult
Sección titulada “GetLibraryResult”export interface GetLibraryResult { assets: PhotoLibraryAsset[]; /** * Total number of assets matching the query in the library. `assets.length` can be less * than this value when pagination is used. */ totalCount: number; /** Whether more assets are available when using pagination. */ hasMore: boolean;}PhotoLibraryFile
Sección titulada “PhotoLibraryFile”export interface PhotoLibraryFile { /** Absolute path on the native file system. */ path: string; /** * URL that can be used inside a web view. Usually produced by `Capacitor.convertFileSrc(path)`. */ webPath: string; mimeType: string; /** Size in bytes if known, otherwise `-1`. */ size: number;}PickMediaOptions
Sección titulada “PickMediaOptions”export interface PickMediaOptions { /** * Maximum number of items the user can select. Use `0` to allow unlimited selection. * Defaults to `1`. */ selectionLimit?: number; /** Allow the user to select images. Defaults to `true`. */ includeImages?: boolean; /** Allow the user to select videos. Defaults to `false`. */ includeVideos?: boolean; /** Width of the generated thumbnails for picked items. Defaults to `256`. */ thumbnailWidth?: number; /** Height of the generated thumbnails for picked items. Defaults to `256`. */ thumbnailHeight?: number; /** JPEG quality for generated thumbnails (0-1). Defaults to `0.7`. */ thumbnailQuality?: number;}PickMediaResult
Sección titulada “PickMediaResult”export interface PickMediaResult { assets: PhotoLibraryAsset[];}PhotoLibraryAsset
Sección titulada “PhotoLibraryAsset”export interface PhotoLibraryAsset { id: string; fileName: string; type: PhotoAssetType; width: number; height: number; duration?: number; creationDate?: string; modificationDate?: string; latitude?: number; longitude?: number; mimeType: string; /** Size in bytes reported by the OS for the underlying asset, if available. */ size?: number; albumIds?: string[]; thumbnail?: PhotoLibraryFile; file?: PhotoLibraryFile;}PhotoAssetType
Sección titulada “PhotoAssetType”export type PhotoAssetType = 'image' | 'video';Fuente de verdad
Sección titulada “Fuente de verdad”Esta página se genera desde el src/definitions.tsVuelve a ejecutar la sincronización cuando cambie el API público en el upstream.
Continúa desde Primeros pasos
Sección titulada “Continúa desde Primeros pasos”Si estás usando Primeros pasos para planificar el dashboard y las operaciones de API, conéctalo con Usando @capgo/capacitor-photo-library para la capacidad nativa al usar @capgo/capacitor-photo-library, Resumen de API para el detalle de implementación en Resumen de API Overview, Introducción para el detalle de implementación en Introducción, Claves de API para el detalle de implementación en Claves de API, y Dispositivos para el detalle de implementación en Dispositivos.