はじめに
このプラグインのインストール手順とフルマークダウンガイドを含むセットアップの質問をコピーします。
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.
インストール
「インストール」AI-Assisted Setupを使用してプラグインをインストールできます。AIツールにCapgoスキルを追加するには、以下のコマンドを実行してください。
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins次に、以下のプロンプトを使用してください。
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-youtube-player` plugin in my project.Manual Setupを使用する場合は、以下のコマンドを実行してください。プラットフォーム固有の指示に従ってください。
bun add @capgo/capacitor-youtube-playerbunx cap syncインポート
「インポート」import { YoutubePlayer } from '@capgo/capacitor-youtube-player';メイン WebView で YouTube のリファラー ブロッキングを修正
メイン WebView で YouTube のリファラー ブロッキングを修正YouTube がプラグイン内で動作する場合でも、同じアプリが YouTube のページ、埋め込み、または API を Capacitor のメイン WebView を通じて読み込むと失敗する場合、有効にします。 patchRefererHeader Capacitor の設定で "
Capacitor の Sync/Update 時に、インターセプトされた YouTube の要求に有効なヘッダーが含まれるようにプラグインが Capacitor をパッチします。 Referer クリップボードにコピー
{ "plugins": { "YoutubePlayer": { "patchRefererHeader": true, "refererHeader": "https://www.youtube.com" } }}- , および
youtube.com,youtube-nocookie.com既にヘッダーを定義している要求は除外されます。youtu.be既にヘッダーを定義している要求は除外されます。 - Requests
Refererヘッダーは元の値を保持します。 refererHeaderは省略可能であり、デフォルト値はhttps://www.youtube.com.- サポートされるプラットフォームはCapacitor
8.xインストール済みのiOSおよびAndroidプラットフォーム向けです。
APIの概要
セクション「APIの概要」initialize
セクション「initialize」新しいYouTubeプレイヤーインスタンスを初期化します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.initialize({ playerId: 'my-player', videoId: 'dQw4w9WgXcQ', playerSize: { width: 640, height: 360 }, privacyEnhanced: true});destroy
セクション「destroy」プレイヤーインスタンスを破棄し、リソースを解放します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.destroy({} as PlayerIdOptions);stopVideo
「stopVideo」を参照動画の再生を停止し、ロードをキャンセルします。 このメソッドを頻繁に使用するのは避けてください。pauseVideo()を使用することが推奨されます。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.stopVideo({} as PlayerIdOptions);playVideo
「playVideo」を参照現在のキューまたはロード済みの動画を再生します。 最終的なプレイヤー状態はPLAYING(1)になります。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideo({} as PlayerIdOptions);pauseVideo
「pauseVideo」を参照現在の再生中の動画を一時停止します。 最終的なプレイヤー状態はPAUSED(2)になります。ただし、既にENDED(0)の場合は除きます。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.pauseVideo({} as PlayerIdOptions);seekTo
「seekTo」を参照動画の特定の時間にジャンプします。 プレイヤーが一時停止中の場合は一時停止が維持され、再生中の場合は再生が継続されます。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.seekTo({} as SeekToOptions);loadVideoById
「loadVideoById」を読み込む指定されたYouTube IDで動画を読み込んで再生します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoById({} as VideoByIdMethodOptions);cueVideoById
「cueVideoById」を読み込むIDで動画をクイューする サムネイルを読み込んでプレーヤーを準備しますが、再生するにはplayVideo()を呼び出す必要があります。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoById({} as VideoByIdMethodOptions);loadVideoByUrl
「loadVideoByUrl」を読み込む指定されたURLで動画を読み込んで再生します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoByUrl({} as VideoByUrlMethodOptions);cueVideoByUrl
「cueVideoByUrl」を読み込むURLで動画をクイューする サムネイルを読み込んでプレーヤーを準備しますが、再生するにはplayVideo()を呼び出す必要があります。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoByUrl({} as VideoByUrlMethodOptions);cuePlaylist
セクション「cuePlaylist」プレイリストをクエストする
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cuePlaylist({} as PlaylistMethodOptions);loadPlaylist
セクション「loadPlaylist」プレイリストを読み込んで再生する
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadPlaylist({} as PlaylistMethodOptions);nextVideo
セクション「nextVideo」プレイリストの次の動画を再生する
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.nextVideo({} as PlayerIdOptions);previousVideo
セクション「previousVideo」プレイリストの前の動画を再生する
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.previousVideo({} as PlayerIdOptions);playVideoAt
「playVideoAt」セクションプレイリスト内の特定の動画を指定されたインデックスで再生します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideoAt({} as PlayVideoAtOptions);mute
「ミュート」セクションプレイヤーアウディオをミュートします。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.mute({} as PlayerIdOptions);unMute
「アンミュート」セクションプレイヤーアウディオをアンミュートします。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.unMute({} as PlayerIdOptions);isMuted
「ミュート状態」セクションプレイヤーが現在ミュート状態であるかを確認します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.isMuted({} as PlayerIdOptions);setVolume
「setVolume」セクションプレイヤーの音量を設定します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setVolume({} as SetVolumeOptions);getVolume
「getVolume」セクション現在のプレイヤーの音量を取得します。 ミュート状態でも音量を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVolume({} as PlayerIdOptions);setSize
「setSize」セクションプレイヤーのサイズをピクセル単位で設定します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setSize({} as SetSizeOptions);getPlaybackRate
「getPlaybackRate」セクション現在の再生速度を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackRate({} as PlayerIdOptions);setPlaybackRate
「再生速度の設定」再生速度を設定します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackRate({} as SetPlaybackRateOptions);getAvailablePlaybackRates
「再生速度の選択肢の取得」現在の動画の再生速度の選択肢を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailablePlaybackRates({} as PlayerIdOptions);setLoop
「ループの設定」ループ機能を有効または無効にします。 ループが有効になっている場合、最後の動画の終了後は再生が開始されます。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setLoop({} as SetLoopOptions);setShuffle
「シャッフルの設定」シャッフル機能を有効または無効にします。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setShuffle({} as SetShuffleOptions);getVideoLoadedFraction
セクション “getVideoLoadedFraction”ビデオのバッファリングされた部分の割合を取得します。 より信頼性の高いgetVideoBytesLoaded/getVideoBytesTotalの代替
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoLoadedFraction({} as PlayerIdOptions);getPlayerState
セクション “getPlayerState”プレイヤーの現在の状態を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlayerState({} as PlayerIdOptions);getAllPlayersEventsState
セクション “getAllPlayersEventsState”すべてのアクティブなプレイヤーのイベント状態を取得します。 複数のプレイヤー インスタンスを追跡するのに役立ちます。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAllPlayersEventsState();getCurrentTime
セクション “getCurrentTime”現在の再生位置(秒)を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getCurrentTime({} as PlayerIdOptions);toggleFullScreen
フルスクリーンモードの切り替えフルスクリーンモードをオンまたはオフにします。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.toggleFullScreen({} as ToggleFullScreenOptions);getPlaybackQuality
再生品質の取得コピー
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackQuality({} as PlayerIdOptions);setPlaybackQuality
再生品質を設定します。
ネットワーク状況によって実際の品質が異なる場合があります。コピー
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackQuality({} as SetPlaybackQualityOptions);getAvailableQualityLevels
コピー利用可能な品質レベルの取得
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailableQualityLevels({} as PlayerIdOptions);getDuration
Section titled “getDuration”現在の動画の秒数を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getDuration({} as PlayerIdOptions);getVideoUrl
Section titled “getVideoUrl”現在の動画のYouTube.com URLを取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoUrl({} as PlayerIdOptions);getVideoEmbedCode
Section titled “getVideoEmbedCode”Get the embed code for the current video. Returns HTML iframe embed code.
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoEmbedCode({} as PlayerIdOptions);getPlaylist
Section titled “getPlaylist”現在のプレイリスト内の動画IDの配列を取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylist({} as PlayerIdOptions);getPlaylistIndex
Section titled “プレイリストのインデックスを取得”プレイリストで現在再生中の動画のインデックスを取得します。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylistIndex({} as PlayerIdOptions);getIframe
Section titled “iframe要素を取得”プレイヤーのiframe DOM要素を取得します。 Webプラットフォームのみ。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getIframe({} as PlayerIdOptions);addEventListener
Section titled “イベントリスナーを追加”イベントリスナーをプレイヤーに追加します。 Webプラットフォームのみ。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
YoutubePlayer.addEventListener({ playerId: 'my-player', eventName: 'onStateChange', listener: (event) => { console.log('Player state:', event.data); },});removeEventListener
Section titled “イベントリスナーを削除”イベントリスナーをプレイヤーから削除します。 Webプラットフォームのみ。
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.removeEventListener({} as PlayerEventListenerOptions<TEvent>);種類の参照
「種類の参照」PlayerIdOptions
「PlayerIdOptions」export interface PlayerIdOptions { playerId: string;}SeekToOptions
「SeekToOptions」export interface SeekToOptions extends PlayerIdOptions { playerId: string; seconds: number; allowSeekAhead: boolean;}VideoByIdMethodOptions
「VideoByIdMethodOptions」export interface VideoByIdMethodOptions extends PlayerIdOptions { playerId: string; options: IVideoOptionsById;}VideoByUrlMethodOptions
「VideoByUrlMethodOptions」export interface VideoByUrlMethodOptions extends PlayerIdOptions { playerId: string; options: IVideoOptionsByUrl;}PlaylistMethodOptions
「PlaylistMethodOptions」export interface PlaylistMethodOptions extends PlayerIdOptions { playerId: string; playlistOptions: IPlaylistOptions;}PlayVideoAtOptions
「PlayVideoAtOptions」セクションexport interface PlayVideoAtOptions extends PlayerIdOptions { playerId: string; index: number;}SetVolumeOptions
「SetVolumeOptions」セクションexport interface SetVolumeOptions extends PlayerIdOptions { playerId: string; volume: number;}SetSizeOptions
「SetSizeOptions」セクションexport interface SetSizeOptions extends PlayerIdOptions { playerId: string; width: number; height: number;}SetPlaybackRateOptions
「SetPlaybackRateOptions」セクションexport interface SetPlaybackRateOptions extends PlayerIdOptions { playerId: string; suggestedRate: number;}SetLoopOptions
「SetLoopOptions」セクションexport interface SetLoopOptions extends PlayerIdOptions { playerId: string; loopPlaylists: boolean;}SetShuffleOptions
「SetShuffleOptions」セクションexport interface SetShuffleOptions extends PlayerIdOptions { playerId: string; shufflePlaylist: boolean;}ToggleFullScreenOptions
フルスクリーンオプションの切り替えexport interface ToggleFullScreenOptions extends PlayerIdOptions { playerId: string; isFullScreen: boolean | null | undefined;}真実の源
真実の源このページはプラグインの src/definitions.ts. 公開 API がアップストリームで変更されたときに再度 Sync を実行してください。
Getting Started から続けてください
Getting Started から続けてくださいあなたが Getting Started ダッシュボードと API の作業を計画する場合、 Using @capgo/capacitor-youtube-player native機能の使用に@capgo/capacitor-youtube-playerのために APIの概要 APIの実装詳細のために 導入 __CAPGO_KEEP_0__の実装詳細のために APIのキー APIの実装詳細のために、 デバイス ページを編集