Getting Started
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
Sottosezione intitolata “Installazione”Puoi utilizzare la nostra configurazione assistita dall'IA per installare il plugin. Aggiungi le Capgo competenze al tuo strumento di AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi utilizza 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 sistema di sotto.
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 “pickFiles”Scegli 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 “pickImages”Scegli 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 “pickVideos”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 directory 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);Copia 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
Sottosezione intitolata “verificaPermessi”Verifica i permessi 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
Sottosezione intitolata “richiediPermessi”Richiedi i permessi 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');}Tipo di Riferimento
Sottosezione intitolata “Tipo di Riferimento”PickFilesOptions
Sezione intitolata “Opzioni per scegliere file”Opzioni per scegliere 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 “Risultato di scegliere file”Risultato di scegliere file.
export interface PickFilesResult { /** Array of picked files */ files: PickedFile[];}PickMediaOptions
Sezione intitolata “ScegliOptioniMedia”Opzioni per scegliere 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
Risultato della directory selezionataRisultato di scegliere una cartella.
export interface PickDirectoryResult { /** The path to the selected directory */ path: string;}ConvertHeicToJpegOptions
Sezione intitolata “ConvertHeicToJpegOptions”Opzioni per la conversione da HEIC a 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 da HEIC a 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 autorizzazione 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 “ListenerPickerDismesso”Callback di ascolto per evento di chiusura del picker.
export type PickerDismissedListener = (event: null) => void;PickedFile
Sezione intitolata “FileSelezionato”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 “StatoDiPermesso”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’s src/definitions.ts. Riavvia la sincronizzazione quando le API pubbliche cambiano in alto.
Keep going from Getting Started
Sezione intitolata “Continua da Inizia”Se stai utilizzando Getting Started per pianificare lo storage e il trattamento dei file, collega Utilizza @capgo/capacitor-file-picker per la capacità nativa in Utilizza @capgo/capacitor-file-picker @capgo/capacitor-archiviazione-dati-sqlite per i dettagli di implementazione in @capgo/capacitor-archiviazione-dati-sqlite Usando @capgo/capacitor-archiviazione-dati-sqlite per la dettaglio di implementazione in @capgo/capacitor-data-storage-sqlite File @capgo/capacitor per il dettaglio di implementazione in @capgo/capacitor-file, e Utilizzare @capgo/capacitor-file per la capacità nativa in Utilizzare @capgo/capacitor-file.