Getting Started
Este contenido aún no está disponible en tu idioma.
ℹ️ Platform support: The audio session API is available on iOS. Calls on Android and the web resolve without effect so you can keep shared logic.
-
Install the package
Ventana de terminal npm i @capgo/capacitor-plugin-audiosessionVentana de terminal pnpm add @capgo/capacitor-plugin-audiosessionVentana de terminal yarn add @capgo/capacitor-plugin-audiosessionVentana de terminal bun add @capgo/capacitor-plugin-audiosession -
Sync iOS platform
Ventana de terminal npx cap sync iosVentana de terminal pnpm cap sync iosVentana de terminal yarn cap sync iosVentana de terminal bunx cap sync ios
Inspect available outputs
import { AudioSession, AudioSessionPorts } from '@capgo/capacitor-plugin-audiosession';
const outputs = await AudioSession.currentOutputs();
if (outputs.includes(AudioSessionPorts.BLUETOOTH_A2DP)) { console.log('Bluetooth speaker connected');}Override to speaker mode
import { AudioSession, OutputOverrideType } from '@capgo/capacitor-plugin-audiosession';
await AudioSession.overrideOutput(OutputOverrideType.speaker);
// Restore system routing when you are doneawait AudioSession.overrideOutput(OutputOverrideType.default);Listen for route and interruption events
import { AudioSession, RouteChangeReasons, InterruptionTypes } from '@capgo/capacitor-plugin-audiosession';
const routeListener = await AudioSession.addListener('routeChanged', (reason) => { if (reason === RouteChangeReasons.NEW_DEVICE_AVAILABLE) { console.log('User connected a new audio route'); }});
const interruptionListener = await AudioSession.addListener('interruption', (type) => { if (type === InterruptionTypes.BEGAN) { // Pause playback while we are interrupted } else { // Resume playback }});
// Later during cleanupawait routeListener.remove();await interruptionListener.remove();Entitlements
- iOS: Add any required background audio modes (e.g.
audio,voice) insideios/App/App/Info.plistif your app plays audio in the background. - Other platforms: No additional setup is necessary; methods will resolve with empty results.