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-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.
Potresti utilizzare la nostra configurazione assistita dall'IA per installare il plugin. Aggiungi le Capgo abilità al tuo strumento di 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-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 syncImporta
Sezione intitolata “Importa”import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';Panoramica di API
Sezione intitolata “Panoramica di API”startRecording
Sezione intitolata “startRecording”Inizia a registrare l'audio utilizzando il microfono del dispositivo.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.startRecording();pauseRecording
Sezione intitolata “pauseRecording”Interrompi 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 “resumeRecording”Riprendi una registrazione precedentemente sospesa.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.resumeRecording();stopRecording
Sezione intitolata “stopRecording”Interrompi la registrazione corrente e persisti l'audio registrato.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.stopRecording();cancelRecording
Sezione intitolata “cancelRecording”Annulla la registrazione corrente e scarta qualsiasi 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';
await CapacitorAudioRecorder.getRecordingStatus();getCurrentAmplitude
Sottosezione intitolata “getCurrentAmplitude”Recupera l'attuale ampiezza di ingresso (livello del microfono) come numero normalizzato
nell'intervallo. [0, 1] Inteso per alimentare visualizzazioni in tempo reale come indicatori di volume o onde
mentre si registra. Restituisce
quando non è attiva alcuna registrazione. Progettato per
la polling UI - un intervallo di 60–100 ms è un buon punto di partenza per una
onda. Evita di chiamarlo in un loop stretto; ogni chiamata attraversa il ponte
JS/nativo.
Copia negli appunti 0 Sottosezione intitolata “checkPermissions”
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.getCurrentAmplitude();checkPermissions
Copia negli appuntiRestituisci lo stato di accesso attuale per l'accesso al microfono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.checkPermissions();requestPermissions
Sezione intitolata “richiesta di autorizzazione”Richiedi l'autorizzazione per accedere al microfono.
import { CapacitorAudioRecorder } from '@capgo/capacitor-audio-recorder';
await CapacitorAudioRecorder.requestPermissions();Riferimento di tipo
Sezione intitolata “Riferimento di tipo”StartRecordingOptions
Sezione intitolata “Opzioni di registrazione iniziale”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 “Risultato di arresto della registrazione”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 si completa.
export type RecordingStoppedEvent = StopRecordingResult;AudioSessionCategoryOption
Sezione intitolata “AudioSessionCategoryOption”Opzioni di categoria di 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 “AudioSessionMode”Modalità di sessione audio disponibili 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 “RecordingStatus”Lo stato di registrazione.
export enum RecordingStatus { Inactive = 'INACTIVE', Recording = 'RECORDING', Paused = 'PAUSED',}PermissionState
Sezione intitolata “PermissionState”Stati di autorizzazione della piattaforma supportati 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. Riavvia la sincronizzazione quando le informazioni pubbliche API cambiano upstream.
Continua da Iniziare
Sezione intitolata “Continua da Iniziare”Se stai utilizzando Iniziare per pianificare il comportamento dei media e dell'interfaccia nativa, connettilo con Utilizza @capgo/capacitor-registratore-di-audio per la capacità nativa in Utilizza @capgo/capacitor-registratore-di-audio Utilizza @capgo/capacitor-attività-viva per la capacità nativa in Utilizza @capgo/capacitor-attività-viva @capgo/capacitor-attività-viva per il dettaglio di implementazione in @capgo/capacitor-attività-viva Utilizza @capgo/capacitor-lettore-di-video per la capacità nativa in Utilizza @capgo/capacitor-lettore-di-video, e @capgo/capacitor-lettore-di-video per il dettaglio di implementazione in @capgo/capacitor-lettore-di-video.