Saltare al contenuto principale

Anteprima della fotocamera Plugin Capacitor

Visualizza feed di camera in tempo reale come sovrapposizione con controlli personalizzabili e funzionalità di cattura

Installa

bun add @capgo/camera-preview bunx cap sync
npm, pnpm o yarn
  • npm install @capgo/camera-preview
  • pnpm add @capgo/camera-preview
  • yarn add @capgo/camera-preview

Guida

Come utilizzare la anteprima della camera in Capacitor

Testa sul dispositivo

Scarica l'app Capgo, poi scansione il QR code.

Anteprima della plugin Camera Preview anteprima QR code

Utilizza @capgo/camera-preview

L'interfaccia principale per il plugin CameraPreview.

Installa

bun add @capgo/camera-preview
bunx cap sync

bunx cap sync copia il code nativo del plugin nei tuoi progetti nativi. Esegui nuovamente dopo ogni aggiornamento del plugin.

Importa

import { CameraPreview } from '@capgo/camera-preview';

Vedi API in azione

Metodo Descrizione
start Inizia la preview della fotocamera.
stop Sospendi la preview della fotocamera.
capture Cattura un'immagine dalla fotocamera.
captureSample Cattura un singolo frame dal flusso di preview della fotocamera.
startBarcodeScanner Avvia lo scanning dei codici a barre sulla preview della camera attiva.
stopBarcodeScanner Interrompe la scansione dei codici a barre mantenendo attiva la preview della fotocamera.
getSupportedFlashModes Ottieni i modi della flash supportati dalla fotocamera attiva.
setAspectRatio Imposta l'aspetto della preview della fotocamera.
getAspectRatio Ottieni l'aspetto corrente della preview della fotocamera.
setGridMode Imposta il modello della griglia della preview della fotocamera.
getGridMode Ottieni il modello della griglia corrente della preview della fotocamera.
checkPermissions Verifica lo stato di autorizzazione della camera (e della microfonia facoltativa) senza sollecitare il dialogo del sistema.
requestPermissions Richiede le autorizzazioni per la camera (e microfono opzionale). Se le autorizzazioni sono già state concesse o negate, il suo stato attuale viene restituito senza sollecitazione. showSettingsAlert Se è vero e le autorizzazioni sono negate, verrà presentato un avviso specifico per piattaforma che guida l'utente alle impostazioni dell'app.
getHorizontalFov Ottiene il campo orizzontale di visione (FoV) per la camera attiva. Nota: Questo può essere un'ipotesi su alcuni dispositivi.
getSupportedPictureSizes Ottiene le dimensioni delle immagini supportate per tutte le camere.
setFlashMode Imposta il modo flash per la camera attiva.
flip Alternare tra la camera anteriore e posteriore.
setOpacity Imposta la trasparenza della anteprima della camera.
stopRecordVideo Sospende una registrazione video in corso.
startRecordVideo Inizia a registrare una video.
setVideoQuality Imposta la qualità della registrazione video per la sessione della camera attiva.
getVideoQuality Ottiene la qualità della registrazione video attuale.
getSupportedVideoQualities Restituisce le qualità video supportate dalla camera attiva.
setVideoCodec Imposta il codec video utilizzato durante la registrazione.
getVideoCodec Ottieni il codec video corrente utilizzato per la registrazione.
getSupportedVideoCodecs Restituisce i codec video supportati dalla camera attiva.
isVideoStabilizationSupported Controlla se la stabilizzazione video è supportata dalla camera attiva.
getSupportedVideoStabilizationModes Restituisce i modi di stabilizzazione video supportati dalla camera attiva.
getVideoStabilizationMode Ottieni il modo di stabilizzazione video corrente.
setVideoStabilizationMode Imposta il modo di stabilizzazione video per la registrazione. Non può essere modificato mentre una registrazione è in corso. Puoi anche passare videoStabilizationMode opzioni. startRecordVideo() options.
isRunning Ottieni tutti i dispositivi di camera disponibili.
getAvailableDevices Ottiene tutte le dispositivi di camera disponibili.
getZoom Ottiene lo stato di ingrandimento attuale, compresi minimo/maximo e informazioni sulla lente attuale.
getZoomButtonValues Restituisce i valori del pulsante di ingrandimento per la selezione rapida. - iOS/Android: include 0,5 se disponibile ultra-larghezza; 1 e 2 se disponibile larghezza; 3 se disponibile telefotocamera - Web: non supportato.
setZoom Imposta il livello di ingrandimento della camera.
getFlashMode Ottiene lo stato attuale del flash.
setDeviceId Svuota la camera attiva e attiva quella con lo specificato deviceId.
getDeviceId Ottiene l'ID del dispositivo di camera attualmente associato. Su Android, se una richiesta di lente fisica cade su una logica camera, questo restituisce l'ID della camera logica associata.
getPreviewSize Ottiene le dimensioni e la posizione della preview attuale.
setPreviewSize Imposta le dimensioni e la posizione della preview.
setFocus Imposta il focus della camera su un punto specifico nella preview.
deleteFile Cancella un file all'indirizzo assoluto specificato sul dispositivo. Utilizza questo per pulire velocemente le immagini temporanee create con storeToFileNon è supportato in web e lancerà un errore.
getSafeAreaInsets Ottiene gli insetti di area sicura per i dispositivi. Restituisce l'insetto di orientamento consapevole notch/camera cutout e l'orientamento attuale. In modalità ritratto: restituisce l'insetto superiore (notch in alto). In modalità orizzontale: restituisce l'insetto sinistro (notch spostata sul lato). Questo si concentra sull'area di taglio (notch, foro, ecc.) che tutti i telefoni moderni hanno.
getOrientation Restituisce l'orientamento attuale del dispositivo in un formato cross-platform.
getExposureModes Restituisce i modi di esposizione supportati dalla camera attiva. I modi possono includere: 'bloccato', 'auto', 'continuo', 'personalizzato'.
getExposureMode Restituisce il modo di esposizione corrente.
setExposureMode Imposta il modo di esposizione.
getExposureCompensationRange Restituisce il range di compensazione di esposizione (EV bias) supportato.
getExposureCompensation Restituisce la compensazione di esposizione corrente (EV bias).
setExposureCompensation Imposta la compensazione di esposizione (EV bias). Il valore sarà limitato al range.
getWhiteBalanceModes Restituisce i modi di bilanciamento bianco supportati dalla camera attiva. I modi possono includere: 'AUTO', 'LOCK', 'CONTINUO'. CUSTOM non è elencato fino a quando non viene implementato il supporto manuale.
getWhiteBalanceMode Restituisce il modo di bilanciamento bianco corrente.
setWhiteBalanceMode Imposta il modo di bilanciamento bianco. CONTINUOUS Mantiene in esecuzione il bilanciamento bianco automatico (consigliato; evita un cast caldo/giallo). LOCK Congela le guadagni correnti, AUTO Esegue un'adeguamento una volta per tutte. CUSTOM è riservato e rifiutato fino a quando non viene implementata la supporto manuale.
getSupportedVideoFrameRates Elencare i tassi di frame video supportati dall'attuale camera per il formato corrente. I valori supportati dipendono dalla selezione della camera, del lente e della qualità video.
getVideoFrameRate Restituisce il tasso di frame video configurato per la camera attiva. Su Android il tasso di registrazione effettivo può ancora variare in condizioni di bassa luce o sotto pressione termica.
setVideoFrameRate Imposta il tasso di frame video target per la sessione della camera attiva. Preferisce passare frameRate a startRecordVideo() quando si inizia una registrazione. Rifiuta i valori non supportati con un errore chiaro.

Esempi

start()

Avvia la preview della camera.

import { CameraPreview } from '@capgo/camera-preview';

const result = await CameraPreview.start({ parent: 'parent' });
console.log(result);

stop()

Ferma la preview della camera.

import { CameraPreview } from '@capgo/camera-preview';

await CameraPreview.stop();

capture()

Cattura una foto dalla camera.

import { CameraPreview } from '@capgo/camera-preview';

const result = await CameraPreview.capture({ height: 1920 });
console.log(result);

captureSample()

Cattura un singolo frame dal flusso di anteprima della fotocamera.

import { CameraPreview } from '@capgo/camera-preview';

const result = await CameraPreview.captureSample({
  quality: 85,
  mirrorFrontCamera: false,
});
console.log(result);

startBarcodeScanner()

Avvia lo scanning dei codici a barre sulla fotocamera attiva.

import { CameraPreview } from '@capgo/camera-preview';

await CameraPreview.startBarcodeScanner();

stopBarcodeScanner()

Sospendi lo scanning dei codici a barre mantenendo l'anteprima della fotocamera in esecuzione.

import { CameraPreview } from '@capgo/camera-preview';

await CameraPreview.stopBarcodeScanner();

La tabella sopra elenca le 56 metodologie di base. Gli ascoltatori e gli aiuti di versione, e il contratto completo di ogni metodo, sono documentati nel GitHub repository.

Ascolta gli eventi

addListener ritorna un handle. Chiama handle.remove() quando lo schermo viene smontato, o CameraPreview.removeAllListeners() per cancellare ogni ascoltatore.

Riferimento completo

Continua da Utilizzare @capgo/camera-preview

Se stai utilizzando Utilizzare @capgo/camera-preview per pianificare il comportamento dei media nativi e dell'interfaccia, collegalo con @capgo/camera-preview per i dettagli di implementazione in @capgo/camera-preview, Getting Started per i dettagli di implementazione in Iniziare, Utilizzare @capgo/capacitor-attività-in-vivo per la capacità nativa in Utilizzare @capgo/capacitor-attività-in-vivo, @capgo/capacitor-attività-in-vivo per i dettagli di implementazione in @capgo/capacitor-live-attività, e Utilizzando @capgo/capacitor-video-player per la capacità nativa in Utilizzando @capgo/capacitor-video-player.

FAQ

FAQ del plugin Camera Preview

Come posso installare il plugin Camera Preview in un'app Capacitor?

Esegui "bun add @capgo/camera-preview" (o "npm install @capgo/camera-preview"), quindi esegui "bunx cap sync" affinché i progetti iOS e Android acquisiscano il nativo code. Importalo da "@capgo/camera-preview" nella tua app code.

Funziona @capgo/camera-preview con React, Vue e Angular?

Sì. Camera Preview è un pacchetto Capacitor, quindi funziona con qualsiasi framework web che esegue all'interno di Capacitor, compresi Ionic, React, Vue, Angular, Svelte e JavaScript puro.

Qual è la versione di Capacitor supportata da @capgo/camera-preview?

I plugin Capgo seguono la versione maggiore di Capacitor: utilizza la versione maggiore del plugin che corrisponde alla tua versione maggiore di Capacitor (ad esempio plugin v8 con Capacitor 8). La tabella di compatibilità nel README di GitHub elenca le versioni mantenute.

È gratuito e open source @capgo/camera-preview?

Sì. Il codice sorgente code è pubblico su GitHub all'indirizzo https://github.com/Cap-go/capacitor-camera-preview/ e il pacchetto è gratuito per l'installazione da npm. Sono accetti i rapporti di bug e le richieste di pull.

Posso aggiornare code che utilizza Camera Preview senza una revisione dell'App Store?

Installando o aggiornando il plugin cambia il codice nativo code, quindi richiede una nuova costruzione dello store. Dopo di che, le modifiche JavaScript, HTML e CSS che chiamano il plugin possono essere distribuite immediatamente con Capgo aggiornamenti live.

Invia le modifiche di Camera Preview senza attendere la revisione dell'app

Una volta che il plugin è presente nella tua store build, Capgo le aggiornamenti live inviano le tue modifiche JavaScript, HTML e CSS agli utenti in pochi minuti.

Inizia con Capgo