Mulai Menggunakan
Pengaturan siap dicopy dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-youtube-player`
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/youtube-player/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.
Kamu bisa menggunakan Setup Bantuan AI kami untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI kamu menggunakan perintah berikut:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLalu gunakan prompt berikut:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-youtube-player` plugin in my project.Jika kamu lebih suka Menggunakan Setup Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:
bun add @capgo/capacitor-youtube-playerbunx cap syncimport { YoutubePlayer } from '@capgo/capacitor-youtube-player';Memperbaiki Penghalang Referer YouTube di WebView Utama
Judul Bagian: Memperbaiki Penghalang Referer YouTube di WebView UtamaJika YouTube berfungsi di dalam plugin tetapi gagal ketika aplikasi yang sama memuat halaman, iklan, atau API YouTube melalui WebView utama Capacitor, aktifkan patchRefererHeader di konfigurasi Capacitor Anda.
When enabled, the plugin patches Capacitor during sync/update so intercepted YouTube requests include a valid Referer header.
{ "plugins": { "YoutubePlayer": { "patchRefererHeader": true, "refererHeader": "https://www.youtube.com" } }}- , dan
youtube.com,youtube-nocookie.com, andyoutu.bepermintaan tidak terpengaruh. - Permintaan yang sudah mendefinisikan
RefererTetapkan nilai header mereka asli. refererHeaderadalah opsional dan default kehttps://www.youtube.com.- Dukungan pada Capacitor
8.xuntuk platform iOS dan Android yang terpasang.
API Ringkasan
Judul bagian “API Ringkasan”initialize
Judul bagian “initialize”Mulai instance pemutar YouTube baru.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.initialize({ playerId: 'my-player', videoId: 'dQw4w9WgXcQ', playerSize: { width: 640, height: 360 }, privacyEnhanced: true});destroy
Judul bagian “destroy”Hapus instance pemutar dan bebaskan sumber daya.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.destroy({} as PlayerIdOptions);stopVideo
Judul bagian “stopVideo”Berhenti memutar video dan batalkan pengunduhan. Gunakan ini dengan hati-hati - pauseVideo() biasanya lebih disukai.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.stopVideo({} as PlayerIdOptions);playVideo
Bab berjudul “playVideo”Mutar video yang saat ini dipilih atau dimuat. Keadaan akhir pemutar video akan menjadi PLAYING (1).
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideo({} as PlayerIdOptions);pauseVideo
Bab berjudul “pauseVideo”Berhenti memutar video yang sedang bermain. Keadaan akhir pemutar video akan menjadi PAUSED (2), kecuali sudah ENDED (0).
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.pauseVideo({} as PlayerIdOptions);seekTo
Bab berjudul “seekTo”Cari ke waktu tertentu dalam video. Jika pemutar video berhenti, maka tetap berhenti. Jika bermain, terus bermain.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.seekTo({} as SeekToOptions);loadVideoById
Bab berjudul “loadVideoById”Muat dan mainkan video dengan ID YouTube-nya.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoById({} as VideoByIdMethodOptions);cueVideoById
Bagian berjudul “cueVideoById”Tetapkan video oleh ID tanpa memainkannya. Muatlah thumbnail dan siapkan pemutar, tetapi tidak meminta video sampai playVideo() dipanggil.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoById({} as VideoByIdMethodOptions);loadVideoByUrl
Bagian berjudul “loadVideoByUrl”Muat dan mainkan video dengan URL lengkapnya.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoByUrl({} as VideoByUrlMethodOptions);cueVideoByUrl
Bagian berjudul “cueVideoByUrl”Tetapkan video oleh URL tanpa memainkannya.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoByUrl({} as VideoByUrlMethodOptions);cuePlaylist
Bagian berjudul “cuePlaylist”Muat daftar putar tanpa memainkannya. Muat daftar putar dan siapkan video pertama.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cuePlaylist({} as PlaylistMethodOptions);loadPlaylist
Bagian berjudul “loadPlaylist”Memuat dan memainkan daftar putar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadPlaylist({} as PlaylistMethodOptions);nextVideo
Bagian berjudul “nextVideo”Memainkan video berikutnya di daftar putar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.nextVideo({} as PlayerIdOptions);previousVideo
Bagian berjudul “previousVideo”Memainkan video sebelumnya di daftar putar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.previousVideo({} as PlayerIdOptions);playVideoAt
Bagian berjudul “playVideoAt”Mengmainkan video spesifik di playlist dengan indeks.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideoAt({} as PlayVideoAtOptions);Matikan suara pemutar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.mute({} as PlayerIdOptions);Aktifkan suara pemutar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.unMute({} as PlayerIdOptions);Cek apakah pemutar suara sedang dimatikan.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.isMuted({} as PlayerIdOptions);setVolume
Bab berjudul “atur volume”Setel tingkat volume pemutar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setVolume({} as SetVolumeOptions);getVolume
Bab berjudul “getVolume”Get the current player volume level. Returns volume even if player is muted.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVolume({} as PlayerIdOptions);setSize
Bab berjudul “setSize”Atur dimensi pemutar dalam piksel.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setSize({} as SetSizeOptions);getPlaybackRate
Bab berjudul “getPlaybackRate”Dapatkan tingkat pengulangan pemutar saat ini.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackRate({} as PlayerIdOptions);setPlaybackRate
Bab berjudul “setPlaybackRate”Pilih kecepatan pemutaran.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackRate({} as SetPlaybackRateOptions);getAvailablePlaybackRates
Bagian berjudul “getAvailablePlaybackRates”Dapatkan daftar kecepatan pemutaran yang tersedia untuk video saat ini.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailablePlaybackRates({} as PlayerIdOptions);setLoop
Bagian berjudul “setLoop”Mengaktifkan atau menonaktifkan ulangan daftar putar. Ketika diaktifkan, daftar putar akan dimulai dari awal setelah video terakhir.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setLoop({} as SetLoopOptions);Bagian berjudul “setShuffle”
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setShuffle({} as SetShuffleOptions);getVideoLoadedFraction
Nonaktifkan atau aktifkan acak putar daftar.Ambil bagian dari video yang telah di-buffer. Lebih dapat diandalkan daripada getVideoBytesLoaded/getVideoBytesTotal yang sudah deprecated.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoLoadedFraction({} as PlayerIdOptions);getPlayerState
Bab berjudul “getPlayerState”Ambil keadaan saat ini dari pemutar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlayerState({} as PlayerIdOptions);getAllPlayersEventsState
Bab berjudul “getAllPlayersEventsState”Ambil keadaan acara untuk semua pemutar aktif. Bermanfaat untuk mengikuti beberapa instance pemutar.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAllPlayersEventsState();getCurrentTime
Bab berjudul “getCurrentTime”Ambil posisi pemutaran saat ini dalam detik.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getCurrentTime({} as PlayerIdOptions);toggleFullScreen
Bab berjudul “toggleFullScreen”Toggle fullscreen mode on or off.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.toggleFullScreen({} as ToggleFullScreenOptions);getPlaybackQuality
Bab berjudul “getPlaybackQuality”Peroleh kualitas pemutaran saat ini.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackQuality({} as PlayerIdOptions);setPlaybackQuality
Bab berjudul “setPlaybackQuality”Set kualitas pemutaran yang disarankan. Kualitas nyata mungkin berbeda berdasarkan kondisi jaringan.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackQuality({} as SetPlaybackQualityOptions);getAvailableQualityLevels
Bab berjudul “getAvailableQualityLevels”Peroleh daftar tingkat kualitas yang tersedia untuk video saat ini.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailableQualityLevels({} as PlayerIdOptions);getDuration
Bab berjudul “getDuration”Waktu durasi video saat ini dalam detik.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getDuration({} as PlayerIdOptions);getVideoUrl
Bab berjudul “getVideoUrl”URL YouTube.com untuk video saat ini.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoUrl({} as PlayerIdOptions);getVideoEmbedCode
Bab berjudul “getVideoEmbedCode”Peroleh kode code untuk video saat ini. Kembalikan kode iframe HTML code.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoEmbedCode({} as PlayerIdOptions);getPlaylist
Bab berjudul “getPlaylist”Peroleh array ID video dalam daftar putar saat ini.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylist({} as PlayerIdOptions);getPlaylistIndex
Bab berjudul “getPlaylistIndex”Oleh-oleh indeks video yang sedang diputar di playlist.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylistIndex({} as PlayerIdOptions);getIframe
Bab berjudul “getIframe”Dapatkan elemen DOM iframe untuk pemutar. Hanya platform web.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getIframe({} as PlayerIdOptions);addEventListener
Bab berjudul “addEventListener”Tambahkan pemangku acara ke pemutar. Hanya platform web.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
YoutubePlayer.addEventListener({ playerId: 'my-player', eventName: 'onStateChange', listener: (event) => { console.log('Player state:', event.data); },});removeEventListener
Bab berjudul “removeEventListener”Hapus pemangku acara dari pemutar. Hanya platform web.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.removeEventListener({} as PlayerEventListenerOptions<TEvent>);Panduan Referensi Tipe
Pengacuan Judul “Referensi Tipe”PlayerIdOptions
Pengacuan Judul “PlayerIdOptions”export interface PlayerIdOptions { playerId: string;}SeekToOptions
Pengacuan Judul “Pilih Waktu”export interface SeekToOptions extends PlayerIdOptions { playerId: string; seconds: number; allowSeekAhead: boolean;}VideoByIdMethodOptions
Pengacuan Judul “VideoByIdMethodOptions”export interface VideoByIdMethodOptions extends PlayerIdOptions { playerId: string; options: IVideoOptionsById;}VideoByUrlMethodOptions
Pengacuan Judul “VideoByUrlMethodOptions”export interface VideoByUrlMethodOptions extends PlayerIdOptions { playerId: string; options: IVideoOptionsByUrl;}PlaylistMethodOptions
Pengacuan Judul “PlaylistMethodOptions”export interface PlaylistMethodOptions extends PlayerIdOptions { playerId: string; playlistOptions: IPlaylistOptions;}PlayVideoAtOptions
Pengacuan Judul “Mainkan Video di Posisi”export interface PlayVideoAtOptions extends PlayerIdOptions { playerId: string; index: number;}SetVolumeOptions
Bab berjudul “SetVolumeOptions”export interface SetVolumeOptions extends PlayerIdOptions { playerId: string; volume: number;}SetSizeOptions
Bab berjudul “SetSizeOptions”export interface SetSizeOptions extends PlayerIdOptions { playerId: string; width: number; height: number;}SetPlaybackRateOptions
Bab berjudul “SetPlaybackRateOptions”export interface SetPlaybackRateOptions extends PlayerIdOptions { playerId: string; suggestedRate: number;}SetLoopOptions
Bab berjudul “SetLoopOptions”export interface SetLoopOptions extends PlayerIdOptions { playerId: string; loopPlaylists: boolean;}SetShuffleOptions
Bab berjudul “SetShuffleOptions”export interface SetShuffleOptions extends PlayerIdOptions { playerId: string; shufflePlaylist: boolean;}ToggleFullScreenOptions
Bab berjudul “ToggleFullScreenOptions”export interface ToggleFullScreenOptions extends PlayerIdOptions { playerId: string; isFullScreen: boolean | null | undefined;}Sumber Kebenaran
Bab berjudul “Sumber Kebenaran”Halaman ini dihasilkan dari plugin’s src/definitions.ts. Re-run sinkronisasi ketika API publik berubah di atas
Teruskan dari Getting Started
Bab berjudul “Teruskan dari Getting Started”Jika Anda menggunakan Mulai Menggunakan untuk merencanakan dashboard dan API operasi, hubungkannya dengan Menggunakan @capgo/capacitor-youtube-player untuk kemampuan asli di Menggunakan @capgo/capacitor-youtube-player, API Pengenalan untuk detail implementasi di API Pengenalan Pengenalan untuk detail implementasi di Pengenalan API Kunci untuk detail implementasi di API Kunci, dan Perangkat Untuk detail implementasi di Perangkat.