Skip to content

はじめに

ターミナルウィンドウ
bun add @capgo/capacitor-audio-session
bunx cap sync
import { AudioSession } from '@capgo/capacitor-audio-session';

__CAPGO_KEEP_0__ の現在のアクティブなオーディオ出力ルートを取得します。

ウェブと非iOSプラットフォームでは、この値は空の配列に解決されます。

import { AudioSession } from '@capgo/capacitor-audio-session';
await AudioSession.currentOutputs();

__CAPGO_KEEP_0__をオーバーライドします。

使用 speaker を使用して、ビルトインスピーカー経由で再生するか default を使用して、システムによって選択されたルートを復元します。

import { AudioSession } from '@capgo/capacitor-audio-session';
await AudioSession.overrideOutput({} as OutputOverrideType);

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',
}

出力オーバーライドタイプ - default: __CAPGO_KEEP_0__ を使用します。 - speaker: 内蔵スピーカーを通じて再生を強制します。

export type OutputOverrideType = 'default' | 'speaker';

出力オーバーライドの要求の結果

export type OverrideResult = {
success: boolean;
message: string;
};

音声ルートの変更時に呼び出されるリスナー

export type RouteChangeListener = (reason: RouteChangeReasons) => void;

音声セッションの中断または終了時に呼び出されるリスナー

export type InterruptionListener = (type: InterruptionTypes) => void;

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

中断の種類
export enum InterruptionTypes {
BEGAN = 'began',
ENDED = 'ended',
}

真実の源

真実の源

このページはプラグインから生成されています。 src/definitions.tsAPI の上流で変更された場合に再度同期を実行してください。