Getting Started
Copia un prompt di installazione 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-audio-recorder`
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/audio-recorder/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”È possibile utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo competenze al tuo strumento AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi utilizza la seguente richiesta:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-recorder` plugin in my project.Se preferisci l'installazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito.
bun add @capgo/capacitor-audio-recorderbunx cap syncImportazione
Sezione intitolata “Importazione”import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';API Panoramica
Sezione intitolata “API Panoramica”startRecording
Sezione intitolata “Inizia la registrazione”Inizia la registrazione audio utilizzando il microfono del dispositivo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
Sezione intitolata “Pausa registrazione”Pausa la registrazione in corso. Disponibile solo su Android (API 24+), iOS e Web.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.pauseRecording();resumeRecording
Sezione intitolata “Riprendi registrazione”Riprendi una registrazione precedentemente sospesa.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();stopRecording
Sottosezione intitolata “stopRecording”Sospendi la registrazione corrente e conserva l'audio registrato.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.stopRecording();console.log(result);cancelRecording
Sottosezione intitolata “cancelRecording”Cancella la registrazione corrente e scarta l'audio catturato.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.cancelRecording();getRecordingStatus
Sottosezione intitolata “getRecordingStatus”Recupera lo stato di registrazione corrente.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.getRecordingStatus();console.log(result);getCurrentAmplitude
Sottosezione intitolata “getCurrentAmplitude”Recupera l'amplificazione corrente dell'ingresso (livello del microfono) come numero normalizzato in [0, 1] Raggio.
Inteso per guidare visualizzazioni live come i metri VU o le onde mentre si registra. Restituisce 0 quando non è attiva alcuna registrazione. Progettato per la polling UI-rate — un intervallo di 60–100 ms è un buon punto di partenza per un'onda. Evita di chiamarlo in un loop stretto; ogni chiamata attraversa il ponte JS/nativo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.getCurrentAmplitude();console.log(result);checkPermissions
Sezione intitolata “checkPermissions”Restituisce lo stato di accesso attuale per l'accesso al microfono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.checkPermissions();console.log(result);requestPermissions
Sezione intitolata “requestPermissions”Richiedi il permesso di accedere al microfono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
const result = await CapacitorAudioRecorder.requestPermissions();console.log(result);Tipo di Riferimento
Sezione intitolata “Tipo di Riferimento”StartRecordingOptions
Sezione intitolata “StartRecordingOptions”Opzioni accettate da .
export interface StartRecordingOptions { /** * The audio session category options for recording. Only available on iOS. * * @since 1.0.0 */ audioSessionCategoryOptions?: AudioSessionCategoryOption[];
/** * The audio session mode for recording. Only available on iOS. * * @since 1.0.0 */ audioSessionMode?: AudioSessionMode;
/** * The audio bit rate in bytes per second. * Only available on Android and iOS. * * @since 1.0.0 */ bitRate?: number;
/** * The audio sample rate in Hz. * Only available on Android and iOS. * * @since 1.0.0 */ sampleRate?: number;}StopRecordingResult
Sezione intitolata “StopRecordingResult”Risultato restituito da .
export interface StopRecordingResult { /** * The recorded audio as a Blob. Only available on Web. * * @since 1.0.0 */ blob?: Blob;
/** * The duration of the recording in milliseconds. * * @since 1.0.0 */ duration?: number;
/** * The URI pointing to the recorded file. Only available on Android and iOS. * * @since 1.0.0 */ uri?: string;}GetRecordingStatusResult
Sezione intitolata “GetRecordingStatusResult”Risultato restituito da .
export interface GetRecordingStatusResult { /** * The current recording status. * * @since 1.0.0 */ status: RecordingStatus;}GetCurrentAmplitudeResult
Sezione intitolata “GetCurrentAmplitudeResult”Risultato restituito da .
export interface GetCurrentAmplitudeResult { /** * The current input amplitude normalized to the `[0, 1]` range, where `0` * represents silence and `1` represents the maximum level the platform can * report. The value is `0` when no recording is active. * * Note: the source signal differs between platforms — Android reports the * peak sample amplitude since the last call, iOS reports the average power * in dB converted to linear, and Web reports the RMS of the latest frame. * Consumers that need cross-platform parity may want to apply a * per-platform scaling curve. * * @since 8.1.0 */ value: number;}PermissionStatus
Sezione intitolata “PermissionStatus”Informazioni sulla autorizzazione restituite da e .
export interface PermissionStatus { /** * The permission state for audio recording. * * @since 1.0.0 */ recordAudio: PermissionState;}RecordingErrorEvent
Sezione intitolata “RecordingErrorEvent”Evento emesso quando si verifica un errore durante la registrazione.
export interface RecordingErrorEvent { /** * The error message. * * @since 1.0.0 */ message: string;}RecordingStoppedEvent
Sezione intitolata “RecordingStoppedEvent”Evento emesso quando una registrazione è completata.
export type RecordingStoppedEvent = StopRecordingResult;AudioSessionCategoryOption
Sezione intitolata “AudioSessionCategoryOption”Opzioni di categoria della sessione audio disponibili su iOS.
export enum AudioSessionCategoryOption { AllowAirPlay = 'ALLOW_AIR_PLAY', AllowBluetooth = 'ALLOW_BLUETOOTH', AllowBluetoothA2DP = 'ALLOW_BLUETOOTH_A2DP', DefaultToSpeaker = 'DEFAULT_TO_SPEAKER', DuckOthers = 'DUCK_OTHERS', InterruptSpokenAudioAndMixWithOthers = 'INTERRUPT_SPOKEN_AUDIO_AND_MIX_WITH_OTHERS', MixWithOthers = 'MIX_WITH_OTHERS', OverrideMutedMicrophoneInterruption = 'OVERRIDE_MUTED_MICROPHONE_INTERRUPTION',}AudioSessionMode
Sezione intitolata “Modalità AudioSession”Il modo di sessione audio disponibile su iOS.
export enum AudioSessionMode { Default = 'DEFAULT', GameChat = 'GAME_CHAT', Measurement = 'MEASUREMENT', SpokenAudio = 'SPOKEN_AUDIO', VideoChat = 'VIDEO_CHAT', VideoRecording = 'VIDEO_RECORDING', VoiceChat = 'VOICE_CHAT',}RecordingStatus
Sezione intitolata “Stato della registrazione”L'impostazione dello stato della registrazione.
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
Sezione intitolata “Stato della permessione”Il tipo di stato di permessione supportato da Capacitor.
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. Risciacqua 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 il comportamento dei media nativi e dell'interfaccia, collega Usando @capgo/capacitor-audio-recorder per la capacità nativa in Usando @capgo/capacitor-audio-recorder, Usando @capgo/capacitor-live-activities per la capacità nativa in Usando @capgo/capacitor-live-activities, Usando @capgo/capacitor-live-activities per il dettaglio di implementazione in @capgo/capacitor-live-activities, Utilizzando @capgo/capacitor-player-video per la capacità nativa in Utilizzando @capgo/capacitor-player-video, e @capgo/capacitor-player-video per il dettaglio di implementazione in @capgo/capacitor-player-video.