Erste Schritte
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses 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.
Installieren
Abschnitt „Installation“Du kannst unser KI-gestütztes Setup nutzen, um das Plugin zu installieren. Füge die Capgo Skills mit dem folgenden Befehl deinem KI-Tool hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsNutze dann diesen Prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-session` plugin in my project.Wenn du ein manuelles Setup bevorzugst, installiere das Plugin mit den folgenden Befehlen und befolge die plattformspezifischen Anweisungen unten:
npm install @capgo/capacitor-audio-sessionnpx cap syncImportieren
Abschnitt mit dem Titel „Import“import { AudioSession } from '@capgo/capacitor-audio-session';Quickstart
Abschnitt „Quick start“import { AudioSession } from '@capgo/capacitor-audio-session';
await AudioSession.overrideOutput('speaker');Häufige Stolperfallen
Abschnitt „Häufige Fallstricke“- iOS-Fokus: Die Routing-APIs steuern das Verhalten der iOS-Audiositzung.
- Restore: aufrufen
overrideOutput('default')nachdem die Anrufe beendet sind. - Reihenfolge: Konfigurieren, bevor Twilio- oder Media-Plugins starten.
API Übersicht
Abschnitt „API Übersicht“currentOutputs
Abschnitt mit dem Titel „currentOutputs“Die aktuell aktiven Audio-Ausgaberouten abrufen.
Auf Web- und Nicht-iOS-Plattformen ergibt das ein leeres Array.
import { AudioSession } from '@capgo/capacitor-audio-session';
const result = await AudioSession.currentOutputs();console.log(result);overrideOutput
Abschnitt mit dem Titel „overrideOutput“Die aktuelle Audio-Ausgaberoute überschreiben.
Nutzt speaker um die Wiedergabe über den eingebauten Lautsprecher zu erzwingen, oder
default um die systemseitig gewählte Route wiederherzustellen.
import { AudioSession } from '@capgo/capacitor-audio-session';
const result = await AudioSession.overrideOutput('default');console.log(result);Typreferenz
Abschnitt mit dem Titel „Typreferenz“AudioSessionPorts
Abschnitt mit dem Titel „AudioSessionPorts“Verfügbare Audio-Ausgabewege auf 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
Abschnitt mit dem Titel „OutputOverrideType“Output-Override-Typ. - default: Die systemseitig gewählte Route verwenden. - speaker: Erzwingt die Wiedergabe über den eingebauten Lautsprecher.
export type OutputOverrideType = 'default' | 'speaker';OverrideResult
Abschnitt mit dem Titel „OverrideResult“Ergebnis einer Output-Override-Anfrage.
export type OverrideResult = { success: boolean; message: string;};RouteChangeListener
Abschnitt mit dem Titel „RouteChangeListener“Listener, der aufgerufen wird, wenn sich das Audio-Routing ändert.
export type RouteChangeListener = (reason: RouteChangeReasons) => void;InterruptionListener
Abschnitt mit dem Titel „InterruptionListener“Listener, der aufgerufen wird, wenn die Audio-Session unterbrochen wird oder endet.
export type InterruptionListener = (type: InterruptionTypes) => void;RouteChangeReasons
Abschnitt mit dem Titel „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
Abschnitt mit dem Titel „InterruptionTypes“export enum InterruptionTypes { BEGAN = 'began', ENDED = 'ended',}Source of Truth
Abschnitt mit dem Titel „Source of Truth“Diese Seite wird aus dem Plugin generiert src/definitions.ts. Führe den Sync erneut aus, wenn sich das öffentliche API upstream ändert.
Weiter geht's nach Getting Started
Abschnitt: „Weiter geht’s mit Getting Started“Wenn du es nutzt Erste Schritte , um natives Media- und Interface-Verhalten zu planen, verbinde es mit @capgo/capacitor-audio-session verwenden für die native Funktion in Using @capgo/capacitor-audio-session, @capgo/capacitor-live-activities verwenden für die native Funktion in „@capgo/capacitor-live-activities verwenden“, @capgo/capacitor-live-activities für die Implementierungsdetails in @capgo/capacitor-live-activities, Verwendung von @capgo/capacitor-video-player für die native Funktion in „@capgo/capacitor-video-player verwenden“, und @capgo/capacitor-video-player für das Implementierungsdetail in @capgo/capacitor-video-player.