Iniziare
Copia un prompt 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-file-picker`
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-picker/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.
Installazione
Sezione intitolata “Installazione”Puoi utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo abilità al tuo strumento AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUsa poi il seguente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-file-picker` plugin in my project.Se preferisci la configurazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche del tuo platform di seguito:
bun add @capgo/capacitor-file-pickerbunx cap syncImporta
Sezione intitolata “Importa”import { CapgoFilePicker } from '@capgo/capacitor-file-picker';API Panoramica
Sezione intitolata “API Panoramica”pickFiles
Sezione intitolata “selezionaFile”Seleziona uno o più file dal dispositivo.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const result = await CapgoFilePicker.pickFiles({ types: ['application/pdf', 'image/*'], limit: 5, readData: false});console.log('Picked files:', result.files);pickImages
Sezione intitolata “selezionaImmagini”Seleziona uno o più immagini dalla galleria. Solo Android/iOS.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const result = await CapgoFilePicker.pickImages({ limit: 10, readData: false});console.log('Picked images:', result.files);pickVideos
Sezione intitolata “selezionaVideo”Scegli uno o più video dalla galleria. Solo Android/iOS.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const result = await CapgoFilePicker.pickVideos({ limit: 3, skipTranscoding: true});console.log('Picked videos:', result.files);pickMedia
Sezione intitolata “pickMedia”Scegli uno o più immagini o video dalla galleria. Solo Android/iOS.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const result = await CapgoFilePicker.pickMedia({ limit: 5, readData: true});console.log('Picked media:', result.files);pickDirectory
Sezione intitolata “pickDirectory”Scegli una cartella dal dispositivo. Solo Android/iOS.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const result = await CapgoFilePicker.pickDirectory();console.log('Selected directory:', result.path);convertHeicToJpeg
Sezione intitolata “convertHeicToJpeg”Converti un'immagine HEIC in formato JPEG. Solo iOS.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const result = await CapgoFilePicker.convertHeicToJpeg({ path: '/path/to/image.heic', quality: 0.9});console.log('Converted file:', result.path);copyFile
Sezione intitolata “copyFile”Copiare un file in una nuova posizione.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
await CapgoFilePicker.copyFile({ from: '/source/file.pdf', to: '/destination/file.pdf', overwrite: true});checkPermissions
Sezione intitolata “checkPermissions”Verifica le autorizzazioni per leggere i file. Solo Android.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const status = await CapgoFilePicker.checkPermissions();console.log('Read permission:', status.readExternalStorage);requestPermissions
Sezione intitolata “requestPermissions”Richiedi le autorizzazioni per leggere i file. Solo Android.
import { CapgoFilePicker } from '@capgo/capacitor-file-picker';
const status = await CapgoFilePicker.requestPermissions();if (status.readExternalStorage === 'granted') { console.log('Permission granted');}Riferimento di tipo
Sezione intitolata “Riferimento di tipo”PickFilesOptions
Sezione intitolata “PickFilesOptions”Opzioni per la scelta dei file.
export interface PickFilesOptions { /** * List of accepted MIME types or file extensions. * On iOS, only MIME types are supported. * Examples: ['image/*'], ['application/pdf'], ['.pdf', '.doc'] */ types?: string[]; /** * Maximum number of files to pick. * Set to 0 for unlimited (platform default). * @default 0 */ limit?: number; /** * Whether to read the file data as base64. * Note: Reading large files may cause memory issues. * @default false */ readData?: boolean;}PickFilesResult
Sezione intitolata “PickFilesResult”Risultato della selezione dei file.
export interface PickFilesResult { /** Array of picked files */ files: PickedFile[];}PickMediaOptions
Sezione intitolata “PickMediaOptions”Opzioni per la selezione dei media (immagini/video).
export interface PickMediaOptions { /** * Maximum number of files to pick. * Set to 0 for unlimited (platform default). * @default 0 */ limit?: number; /** * Whether to read the file data as base64. * Note: Reading large files may cause memory issues. * @default false */ readData?: boolean; /** * iOS only: Skip transcoding of videos. * @default false */ skipTranscoding?: boolean; /** * iOS 15+ only: Show ordered selection badges. * @default false */ ordered?: boolean;}PickDirectoryResult
Sezione intitolata “PickDirectoryResult”Risultato della selezione di un directory.
export interface PickDirectoryResult { /** The path to the selected directory */ path: string;}ConvertHeicToJpegOptions
Sezione intitolata “ConvertHeicToJpegOptions”Opzioni per la conversione di HEIC in JPEG.
export interface ConvertHeicToJpegOptions { /** The path to the HEIC file to convert */ path: string; /** * The compression quality for JPEG (0.0 - 1.0). * @default 0.9 */ quality?: number;}ConvertHeicToJpegResult
Sezione intitolata “ConvertHeicToJpegResult”Risultato della conversione HEIC in JPEG.
export interface ConvertHeicToJpegResult { /** The path to the converted JPEG file */ path: string;}CopyFileOptions
Sezione intitolata “CopyFileOptions”Opzioni per la copia di un file.
export interface CopyFileOptions { /** Source file path */ from: string; /** Destination file path */ to: string; /** * Whether to overwrite if destination exists. * @default false */ overwrite?: boolean;}PermissionStatus
Sezione intitolata “PermissionStatus”Stato di permesso per l'accesso ai file.
export interface PermissionStatus { /** Whether permission to read media files is granted */ readExternalStorage: PermissionState; /** Whether permission to access media location is granted */ accessMediaLocation?: PermissionState;}PickerDismissedListener
Sezione intitolata “PickerDismissedListener”Callback di ascolto per l'evento di chiusura del picker.
export type PickerDismissedListener = (event: null) => void;PickedFile
Sezione intitolata “File selezionato”Rappresenta un file selezionato.
export interface PickedFile { /** The name of the file */ name: string; /** The path to the file */ path?: string; /** The MIME type of the file */ mimeType: string; /** The size of the file in bytes */ size: number; /** * The base64 encoded data of the file. * Only present if readData was true. */ data?: string; /** * The Blob instance of the file. * Web only. */ blob?: Blob; /** Width in pixels (images/videos only) */ width?: number; /** Height in pixels (images/videos only) */ height?: number; /** Duration in seconds (videos only) */ duration?: number; /** Last modified timestamp in milliseconds */ modifiedAt?: number;}PermissionState
Sezione intitolata “Stato di permesso”Valori dello stato di permesso.
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';Fonte di Verità
Sezione intitolata “Fonte di Verità”Questa pagina è generata dal plugin e src/definitions.ts. Riavvia la sincronizzazione quando i dati pubblici API cambiano in fase di sviluppo.
Continua da Getting Started
Continua da Getting StartedSe stai utilizzando Getting Started per pianificare lo storage e il gestione dei file, connettilo con Usando @capgo/capacitor-file-picker per la capacità nativa in Usando @capgo/capacitor-file-picker, @capgo/capacitor-data-storage-sqlite per il dettaglio di implementazione in @capgo/capacitor-data-storage-sqlite, Usando @capgo/capacitor-data-storage-sqlite per la capacità nativa in Usando @capgo/capacitor-data-storage-sqlite, @capgo/capacitor-file per il dettaglio di implementazione in @capgo/capacitor-file, e Utilizza il file @capgo/capacitor-file per la capacità nativa in Utilizza il file @capgo/capacitor-file. Utilizza il file @capgo/capacitor-file per la capacità nativa.