Primeros pasos
Copia un prompt de configuración con los pasos de instalación y la guía completa en markdown para este 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-session`
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/audiosession/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.
Instalar
Sección titulada “Instalación”Puedes usar nuestro setup asistido por IA para instalar el plugin. Añade las skills de Capgo a tu herramienta de IA con el siguiente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLuego usa el siguiente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-session` plugin in my project.Si prefieres la configuración manual, instala el plugin ejecutando los siguientes comandos y sigue las instrucciones específicas para cada plataforma a continuación:
npm install @capgo/capacitor-audio-sessionnpx cap syncImportar
Sección titulada “Importar”import { AudioSession } from '@capgo/capacitor-audio-session';Inicio rápido
Sección titulada “Inicio rápido”import { AudioSession } from '@capgo/capacitor-audio-session';
await AudioSession.overrideOutput('speaker');Errores comunes
Sección titulada “Errores comunes”- Enfoque en iOS: routing APIs target iOS audio session behavior.
- Restaurar: llamar a
overrideOutput('default')después de que terminen las llamadas. - Ordenación: configurar antes de que se inicien Twilio o los plugins de media.
Resumen de API
Sección titulada “Descripción general de API”currentOutputs
Sección titulada “currentOutputs”Obtén las rutas de salida de audio activas actualmente.
En web y plataformas que no sean iOS, esto devuelve un array vacío.
import { AudioSession } from '@capgo/capacitor-audio-session';
const result = await AudioSession.currentOutputs();console.log(result);overrideOutput
Sección titulada “overrideOutput”Sobrescribe la ruta de salida de audio actual.
Usa speaker para forzar la reproducción por el altavoz integrado, o
default para restaurar la ruta seleccionada por el sistema.
import { AudioSession } from '@capgo/capacitor-audio-session';
const result = await AudioSession.overrideOutput('default');console.log(result);Referencia de tipos
Sección titulada “Referencia de tipos”AudioSessionPorts
Sección titulada “AudioSessionPorts”Rutas de salida de audio disponibles en iOS.
export enum AudioSessionPorts { AIR_PLAY = 'airplay', BLUETOOTH_LE = 'bluetooth-le', BLUETOOTH_HFP = 'bluetooth-hfp', BLUETOOTH_A2DP = 'bluetooth-a2dp', BUILT_IN_SPEAKER = 'builtin-speaker', BUILT_IN_RECEIVER = 'builtin-receiver', HDMI = 'hdmi', HEADPHONES = 'headphones', LINE_OUT = 'line-out',}OutputOverrideType
Sección titulada “OutputOverrideType”Tipo de override de salida. - default: Usar la ruta seleccionada por el sistema. - speaker: Forzar la reproducción por el altavoz integrado.
export type OutputOverrideType = 'default' | 'speaker';OverrideResult
Sección titulada “OverrideResult”Resultado de una solicitud de override de salida.
export type OverrideResult = { success: boolean; message: string;};RouteChangeListener
Sección titulada “RouteChangeListener”Listener que se ejecuta cuando cambia la ruta de audio.
export type RouteChangeListener = (reason: RouteChangeReasons) => void;InterruptionListener
Sección titulada “InterruptionListener”Listener que se ejecuta cuando la sesión de audio se interrumpe o termina.
export type InterruptionListener = (type: InterruptionTypes) => void;RouteChangeReasons
Sección titulada “RouteChangeReasons”export enum RouteChangeReasons { NEW_DEVICE_AVAILABLE = 'new-device-available', OLD_DEVICE_UNAVAILABLE = 'old-device-unavailable', CATEGORY_CHANGE = 'category-change', OVERRIDE = 'override', WAKE_FROM_SLEEP = 'wake-from-sleep', NO_SUITABLE_ROUTE_FOR_CATEGORY = 'no-suitable-route-for-category', ROUTE_CONFIGURATION_CHANGE = 'route-config-change', UNKNOWN = 'unknown',}InterruptionTypes
Sección titulada “InterruptionTypes”export enum InterruptionTypes { BEGAN = 'began', ENDED = 'ended',}Fuente de verdad
Sección titulada “Fuente de verdad”Esta página se genera desde el src/definitions.tsVuelve a ejecutar la sincronización cuando cambie el API público en el upstream.
Continúa desde Primeros pasos
Sección titulada “Continúa desde Primeros pasos”Si estás usando Primeros pasos para planificar el comportamiento de los medios y la interfaz nativos, conéctalo con Usando @capgo/capacitor-audio-session para la capacidad nativa en Using @capgo/capacitor-audio-session, Uso de @capgo/capacitor-live-activities para la capacidad nativa en Uso de @capgo/capacitor-live-activities, @capgo/capacitor-live-activities para los detalles de implementación en @capgo/capacitor-live-activities, Uso de @capgo/capacitor-video-player para la capacidad nativa en Using @capgo/capacitor-video-player, y @capgo/capacitor-video-player para los detalles de implementación en @capgo/capacitor-video-player.