Getting Started
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
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.
Installazione
Sottosezione intitolata “Installazione”Puoi utilizzare la nostra configurazione assistita dall'IA per installare il plugin. Aggiungi le Capgo competenze al tuo strumento di AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi utilizza il seguente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-youtube-player` plugin in my project.Se preferisci l'installazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito:
bun add @capgo/capacitor-youtube-playerbunx cap syncImporta
Sezione intitolata “Importa”import { YoutubePlayer } from '@capgo/capacitor-youtube-player';Risolvi il blocco del referente YouTube nella WebView principale
Sezione intitolata “Risolvi il blocco del referente YouTube nella WebView principale”Se YouTube funziona all'interno del plugin ma fallisce quando lo stesso app carica pagine, embed o API di YouTube attraverso la WebView principale di Capacitor, abilita patchRefererHeader nella tua configurazione di Capacitor.
Quando abilitato, il plugin patcha Capacitor durante la sincronizzazione/aggiornamento, quindi le richieste YouTube intercettate includono un token valido Referer header.
{ "plugins": { "YoutubePlayer": { "patchRefererHeader": true, "refererHeader": "https://www.youtube.com" } }}- Solo
youtube.com,youtube-nocookie.com, eyoutu.bele richieste sono interessate. - Le richieste che già definiscono un
Refererheader mantengono il loro valore originale. refererHeaderè facoltativo e predefinito suhttps://www.youtube.com.- Sostenuto su Capacitor
8.xper le piattaforme iOS e Android installate.
API Overview
Sezione intitolata “API Overview”initialize
Sezione intitolata “inizializza”Inizializza una nuova istanza del player YouTube.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.initialize({ playerId: 'my-player', videoId: 'dQw4w9WgXcQ', playerSize: { width: 640, height: 360 }, privacyEnhanced: true});Distruggi un'istanza di player e libera le risorse.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.destroy({ playerId: 'player-id-123' });console.log(result);stopVideo
Sezione intitolata “fermaVideo”Ferma la riproduzione del video e annulla il caricamento. Usa questo con parsimonia - pauseVideo() è di solito preferito.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.stopVideo({ playerId: 'player-id-123' });console.log(result);Riproduci il video attualmente caricato o caricato. Lo stato finale del player sarà PLAYING (1).
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.playVideo({ playerId: 'player-id-123' });console.log(result);pauseVideo
Sezione intitolata “pausaVideo”Pausa la riproduzione del video in corso. Lo stato finale del player sarà PAUSED (2), a meno che non sia già ENDED (0).
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.pauseVideo({ playerId: 'player-id-123' });console.log(result);Cerca un momento specifico nel video. Se il player è in pausa, rimane in pausa. Se sta giocando, continua a giocare.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.seekTo({ playerId: 'player-id-123', seconds: 10, allowSeekAhead: true,});console.log(result);loadVideoById
Sezione intitolata “loadVideoById”Carica e gioca un video tramite il suo ID di YouTube.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.loadVideoById({ playerId: 'player-id-123', options: { videoId: 'video-id-123' },});console.log(result);cueVideoById
Sezione intitolata “cueVideoById”Carica un video senza riprodurlo. Nota: Carica la miniatura e prepara il player, ma non richiede il video fino a quando non viene chiamato playVideo().
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.cueVideoById({ playerId: 'player-id-123', options: { videoId: 'video-id-123' },});console.log(result);loadVideoByUrl
Sezione intitolata “loadVideoByUrl”Carica e gioca un video tramite la sua URL completa.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.loadVideoByUrl({ playerId: 'player-id-123', options: { mediaContentUrl: 'https://example.com' },});console.log(result);cueVideoByUrl
Sottosezione intitolata “cueVideoByUrl”Cue un video tramite URL senza riprodurlo.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.cueVideoByUrl({ playerId: 'player-id-123', options: { mediaContentUrl: 'https://example.com' },});console.log(result);cuePlaylist
Sottosezione intitolata “cuePlaylist”Cue una playlist senza riprodurla. Carica la playlist e prepara il primo video.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.cuePlaylist({ playerId: 'player-id-123', playlistOptions: { listType: 'playlist' },});console.log(result);loadPlaylist
Sottosezione intitolata “loadPlaylist”Carica e riproduci una playlist.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.loadPlaylist({ playerId: 'player-id-123', playlistOptions: { listType: 'playlist' },});console.log(result);nextVideo
Sottosezione intitolata “nextVideo”Riproduci il prossimo video nella playlist.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.nextVideo({ playerId: 'player-id-123' });console.log(result);previousVideo
Sezione intitolata “previousVideo”Gioca il video precedente nella playlist.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.previousVideo({ playerId: 'player-id-123' });console.log(result);playVideoAt
Sezione intitolata “playVideoAt”Gioca un video specifico nella playlist tramite indice.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.playVideoAt({ playerId: 'player-id-123', index: 1,});console.log(result);Muta il suono del player.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.mute({ playerId: 'player-id-123' });console.log(result);Smuta il suono del player.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.unMute({ playerId: 'player-id-123' });console.log(result);isMuted
Sezione intitolata “isMuted”Verifica se il player è attualmente sull'attenuatore.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.isMuted({ playerId: 'player-id-123' });console.log(result);setVolume
Sezione intitolata “setVolume”Imposta il livello di volume del player.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.setVolume({ playerId: 'player-id-123', volume: 0.5,});console.log(result);getVolume
Sezione intitolata “getVolume”Ottieni il livello attuale del volume del player. Ritorna il volume anche se il player è sull'attenuatore.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getVolume({ playerId: 'player-id-123' });console.log(result);setSize
Sezione intitolata “setSize”Imposta le dimensioni del player in pixel.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.setSize({ playerId: 'player-id-123', width: 1080, height: 1920,});console.log(result);getPlaybackRate
Sezione intitolata “getPlaybackRate”Ottieni il tasso di riproduzione corrente.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getPlaybackRate({ playerId: 'player-id-123' });console.log(result);setPlaybackRate
Sezione intitolata “setPlaybackRate”Imposta la velocità di riproduzione.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.setPlaybackRate({ playerId: 'player-id-123', suggestedRate: 1,});console.log(result);getAvailablePlaybackRates
Sezione intitolata “getAvailablePlaybackRates”Ottieni l'elenco dei tassi di riproduzione disponibili per il video corrente.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getAvailablePlaybackRates({ playerId: 'player-id-123' });console.log(result);setLoop
Sezione intitolata “setLoop”Abilita o disabilita il loop della playlist. Quando abilitato, la playlist riprenderà dall'inizio dopo l'ultimo video.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.setLoop({ playerId: 'player-id-123', loopPlaylists: true,});console.log(result);setShuffle
Sezione intitolata “setShuffle”Abilita o disabilita lo scorrimento della playlist.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.setShuffle({ playerId: 'player-id-123', shufflePlaylist: true,});console.log(result);getVideoLoadedFraction
Sezione intitolata “getVideoLoadedFraction”Ottieni la frazione del video caricato. Più affidabile rispetto alle funzioni obsolete getVideoBytesLoaded/getVideoBytesTotal.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getVideoLoadedFraction({ playerId: 'player-id-123' });console.log(result);getPlayerState
Sezione intitolata “getPlayerState”Ottieni lo stato corrente del player.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getPlayerState({ playerId: 'player-id-123' });console.log(result);getAllPlayersEventsState
Sezione intitolata “getAllPlayersEventsState”Ottieni gli stati degli eventi per tutti i player attivi. Utile per tracciare più istanze di player.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getAllPlayersEventsState();console.log(result);getCurrentTime
Sezione intitolata “getCurrentTime”Ottenere la posizione di riproduzione corrente in secondi.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getCurrentTime({ playerId: 'player-id-123' });console.log(result);toggleFullScreen
Sezione intitolata “toggleFullScreen”Alternare il modalità schermo intero su o fuori.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.toggleFullScreen({ playerId: 'player-id-123', isFullScreen: true,});console.log(result);getPlaybackQuality
Sezione intitolata “getPlaybackQuality”Ottenere la qualità di riproduzione corrente.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getPlaybackQuality({ playerId: 'player-id-123' });console.log(result);setPlaybackQuality
Sezione intitolata “setPlaybackQuality”Impostare la qualità di riproduzione consigliata. La qualità effettiva può differire in base alle condizioni di rete.
import { YoutubePlayer, IPlaybackQuality } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.setPlaybackQuality({ playerId: 'player-id-123', suggestedQuality: IPlaybackQuality.SMALL,});console.log(result);getAvailableQualityLevels
Sezione intitolata “getAvailableQualityLevels”Ottieni l'elenco dei livelli di qualità disponibili per il video corrente.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getAvailableQualityLevels({ playerId: 'player-id-123' });console.log(result);getDuration
Sezione intitolata “getDuration”Ottieni la durata del video corrente in secondi.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getDuration({ playerId: 'player-id-123' });console.log(result);getVideoUrl
Sezione intitolata “getVideoUrl”Ottieni l'URL YouTube.com per il video corrente.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getVideoUrl({ playerId: 'player-id-123' });console.log(result);getVideoEmbedCode
Sezione intitolata “getVideoEmbedCode”Ottieni l'embed code per il video corrente. Restituisce l'iframe HTML di embed code.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getVideoEmbedCode({ playerId: 'player-id-123' });console.log(result);getPlaylist
Sottosezione intitolata “getPlaylist”Ottieni un array degli ID dei video nella playlist corrente.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getPlaylist({ playerId: 'player-id-123' });console.log(result);getPlaylistIndex
Sottosezione intitolata “getPlaylistIndex”Ottieni l'indice del video attualmente in riproduzione nella playlist.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getPlaylistIndex({ playerId: 'player-id-123' });console.log(result);getIframe
Sottosezione intitolata “getIframe”Ottieni l'elemento DOM iframe del player. Solo piattaforma web.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
const result = await YoutubePlayer.getIframe({ playerId: 'player-id-123' });console.log(result);addEventListener
Sottosezione intitolata “addEventListener”Aggiungi un ascoltatore di eventi al player. Solo piattaforma web.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
YoutubePlayer.addEventListener({ playerId: 'my-player', eventName: 'onStateChange', listener: (event) => { console.log('Player state:', event.data); },});removeEventListener
Sezione intitolata “removeEventListener”Elimina un ascoltatore di eventi dal player. Solo piattaforma web.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.removeEventListener({ playerId: 'player-id-123', eventName: 'onReady', listener: (event) => { console.log(event); },});Riferimento di tipo
Sezione intitolata “Riferimento di tipo”PlayerIdOptions
Sezione intitolata “PlayerIdOptions”export interface PlayerIdOptions { playerId: string;}SeekToOptions
Sezione intitolata “SeekToOptions”export interface SeekToOptions extends PlayerIdOptions { playerId: string; seconds: number; allowSeekAhead: boolean;}VideoByIdMethodOptions
Sezione intitolata “VideoByIdMethodOptions”export interface VideoByIdMethodOptions extends PlayerIdOptions { playerId: string; options: IVideoOptionsById;}VideoByUrlMethodOptions
Sezione intitolata “VideoByUrlMethodOptions”export interface VideoByUrlMethodOptions extends PlayerIdOptions { playerId: string; options: IVideoOptionsByUrl;}PlaylistMethodOptions
Sezione intitolata “Optioni del metodo Playlist”export interface PlaylistMethodOptions extends PlayerIdOptions { playerId: string; playlistOptions: IPlaylistOptions;}PlayVideoAtOptions
Sezione intitolata “PlayVideoAtOptions”export interface PlayVideoAtOptions extends PlayerIdOptions { playerId: string; index: number;}SetVolumeOptions
Setta le opzioni del volumeexport interface SetVolumeOptions extends PlayerIdOptions { playerId: string; volume: number;}SetSizeOptions
Impostazioni Dimensioneexport interface SetSizeOptions extends PlayerIdOptions { playerId: string; width: number; height: number;}SetPlaybackRateOptions
Sezione intitolata “SetPlaybackRateOptions”export interface SetPlaybackRateOptions extends PlayerIdOptions { playerId: string; suggestedRate: number;}SetLoopOptions
Sezione intitolata “Imposta le opzioni di ripetizione”export interface SetLoopOptions extends PlayerIdOptions { playerId: string; loopPlaylists: boolean;}SetShuffleOptions
Impostazioni di Scramblingexport interface SetShuffleOptions extends PlayerIdOptions { playerId: string; shufflePlaylist: boolean;}ToggleFullScreenOptions
Opzioni per l'uscita a schermo pienaexport interface ToggleFullScreenOptions extends PlayerIdOptions { playerId: string; isFullScreen: boolean | null | undefined;}Fonte di verità
Sezione intitolata “Fonte di verità”Questa pagina è generata dal plugin src/definitions.ts. Re-run the sync when the public API changes upstream.
Continua da qui: Iniziare
Sezione intitolata “Continua da qui: Iniziare”If sei stai utilizzando Avvio rapido per pianificare dashboard e API operazioni, connettilo con Utilizza @capgo/capacitor-player-di-youtube per la capacità nativa in Utilizza @capgo/capacitor-player-di-youtube API Panoramica per i dettagli di implementazione in API Panoramica Introduzione per i dettagli di implementazione in Introduzione API Chiavi per i dettagli di implementazione in API Chiavi, e Dispositivi per i dettagli di implementazione nei dispositivi.