Passer au contenu

Commencer

ℹ️ Prise en charge de la plateforme : La session audio API est disponible sur iOS. Les appels à Android et au Web sont résolus sans effet afin que vous puissiez conserver une logique partagée.

  1. Installez le package

    Fenêtre de terminal
    npm i @capgo/capacitor-plugin-audiosession
  2. Synchroniser la plateforme iOS

    Fenêtre de terminal
    npx cap sync ios
import { AudioSession, AudioSessionPorts } from '@capgo/capacitor-plugin-audiosession';
const outputs = await AudioSession.currentOutputs();
if (outputs.includes(AudioSessionPorts.BLUETOOTH_A2DP)) {
console.log('Bluetooth speaker connected');
}
import { AudioSession, OutputOverrideType } from '@capgo/capacitor-plugin-audiosession';
await AudioSession.overrideOutput(OutputOverrideType.speaker);
// Restore system routing when you are done
await AudioSession.overrideOutput(OutputOverrideType.default);

Écoutez les événements d’itinéraire et d’interruption

Section titled “Écoutez les événements d’itinéraire et d’interruption”
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 cleanup
await routeListener.remove();
await interruptionListener.remove();
  • iOS : ajoutez tous les modes audio d’arrière-plan requis (par exemple audio, voice) dans ios/App/App/Info.plist si votre application lit de l’audio en arrière-plan.
  • Autres plates-formes : Aucune configuration supplémentaire n’est nécessaire ; les méthodes se résoudront avec des résultats vides.