Langsung ke konten

Panduan Memulai

GitHub

Anda bisa menggunakan AI-Assisted Setup untuk menginstal plugin ini. Tambahkan skill Capgo ke tool AI Anda menggunakan perintah berikut:

Jendela terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Lalu gunakan prompt berikut:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-audio-session` plugin in my project.

Jika Anda lebih suka Manual Setup, instal plugin dengan menjalankan perintah berikut dan ikuti instruksi khusus platform di bawah ini:

Jendela terminal
npm install @capgo/capacitor-audio-session
npx cap sync
import { AudioSession } from '@capgo/capacitor-audio-session';
import { AudioSession } from '@capgo/capacitor-audio-session';
await AudioSession.overrideOutput('speaker');
  • Fokus iOS: routing API menargetkan perilaku audio session iOS.
  • Restore: panggil overrideOutput('default') setelah panggilan berakhir.
  • Ordering: konfigurasi sebelum plugin Twilio atau media dimulai.

Dapatkan rute output audio yang sedang aktif.

Pada web dan platform non-iOS, ini akan menghasilkan array kosong.

import { AudioSession } from '@capgo/capacitor-audio-session';
const result = await AudioSession.currentOutputs();
console.log(result);

Override rute output audio saat ini.

Gunakan speaker untuk memaksa playback melalui speaker bawaan, atau default untuk mengembalikan ke rute pilihan sistem.

import { AudioSession } from '@capgo/capacitor-audio-session';
const result = await AudioSession.overrideOutput('default');
console.log(result);

Rute output audio yang tersedia di 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',
}

Tipe override output. - default: Gunakan rute pilihan sistem. - speaker: Paksa playback melalui speaker bawaan.

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

Hasil dari request override output.

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

Listener yang dipanggil saat audio route berubah.

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

Listener yang dipanggil saat audio session terinterupsi atau berakhir.

export type InterruptionListener = (type: InterruptionTypes) => void;
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',
}
export enum InterruptionTypes {
BEGAN = 'began',
ENDED = 'ended',
}

Halaman ini dibuat dari plugin src/definitions.ts. Jalankan ulang sync saat API publik berubah di upstream.

Jika Anda menggunakan Panduan Memulai untuk merencanakan perilaku media dan antarmuka native, hubungkan dengan Menggunakan @capgo/capacitor-audio-session untuk kapabilitas native saat menggunakan @capgo/capacitor-audio-session, Menggunakan @capgo/capacitor-live-activities untuk kapabilitas native di Menggunakan @capgo/capacitor-live-activities, @capgo/capacitor-live-activities untuk detail implementasi di @capgo/capacitor-live-activities, Menggunakan @capgo/capacitor-video-player untuk kapabilitas native di Using @capgo/capacitor-video-player, dan @capgo/capacitor-video-player untuk detail implementasi di @capgo/capacitor-video-player.