メインコンテンツにスキップ

Getting Started

GitHub

インストール

インストール

AI-Assisted セットアップを使用してプラグインをインストールできます。次のコマンドを使用して、CapgoスキルをAIツールに追加します。

ターミナルウィンドウ
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 セットアップを使用する場合は、次のコマンドを実行してプラグインをインストールし、以下のプラットフォーム固有の指示に従ってください。

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

メイン WebView で YouTube リファラブロッキングを修正する

「YouTubeのリファラブロッキングをメインウェブビューで解決する」セクション

Capacitorのプラグイン内で動作するYouTubeが、同じアプリ内でYouTubeのページ、埋め込み、またはAPIをCapacitorのメインウェブビューで読み込むと失敗する場合、有効にします。 patchRefererHeader Capacitorの設定で有効にします。

有効にすると、sync/updateの際にCapacitorがパッチされ、キャッチされたYouTubeの要求に有効なヘッダーが含まれます。 Referer コピー

{
"plugins": {
"YoutubePlayer": {
"patchRefererHeader": true,
"refererHeader": "https://www.youtube.com"
}
}
}
  • 既にヘッダーを定義している要求は元の値を保持します。 youtube.com, youtube-nocookie.comオプションであり、デフォルトは youtu.be です。
  • Requests that already define a Referer header keep their original value.
  • refererHeader is optional and defaults to https://www.youtube.com.
  • Capacitorでサポート 8.x iOSおよびAndroidプラットフォームのインストール済みに対応

新しいYouTubeプレイヤーインスタンスを初期化します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.initialize({
playerId: 'my-player',
videoId: 'dQw4w9WgXcQ',
playerSize: { width: 640, height: 360 },
privacyEnhanced: true
});

プレイヤーインスタンスを破棄し、リソースを解放します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.destroy({} as PlayerIdOptions);

__CAPGO_KEEP_0__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.stopVideo({} as PlayerIdOptions);

現在のビデオを再生します。 最終的なプレイヤー状態はPLAYING (1)になります。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideo({} as PlayerIdOptions);

現在再生中のビデオを一時停止します。 最終的なプレイヤー状態はPAUSED (2)になります。既にENDED (0)の場合は除きます。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.pauseVideo({} as PlayerIdOptions);

ビデオの特定の時間に移動します。 プレイヤーが一時停止中の場合は一時停止し続けます。再生中の場合は再生を続けます。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.seekTo({} as SeekToOptions);

YouTube IDで指定されたビデオを読み込み、再生します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoById({} as VideoByIdMethodOptions);

IDで指定されたビデオをプレイしないまま表示します。 サムネイルをロードし、プレーヤーを準備しますが、ビデオはplayVideo()が呼び出されるまでリクエストされません。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoById({} as VideoByIdMethodOptions);

URLで指定されたビデオをロードしてプレイします。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoByUrl({} as VideoByUrlMethodOptions);

URLで指定されたビデオをプレイしないまま表示します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoByUrl({} as VideoByUrlMethodOptions);

プレイしないまま、プレイリストを表示します。 プレイリストと最初のビデオをロードします。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cuePlaylist({} as PlaylistMethodOptions);

loadPlaylist

__CAPGO_KEEP_1__

__CAPGO_KEEP_2__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadPlaylist({} as PlaylistMethodOptions);

__CAPGO_KEEP_4__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.nextVideo({} as PlayerIdOptions);

previousVideo

__CAPGO_KEEP_5__

__CAPGO_KEEP_0__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.previousVideo({} as PlayerIdOptions);

playVideoAt

__CAPGO_KEEP_0__

__CAPGO_KEEP_7__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideoAt({} as PlayVideoAtOptions);

__CAPGO_KEEP_2__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.mute({} as PlayerIdOptions);

__CAPGO_KEEP_3__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.unMute({} as PlayerIdOptions);

__CAPGO_KEEP_4__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.isMuted({} as PlayerIdOptions);

__CAPGO_KEEP_5__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setVolume({} as SetVolumeOptions);

現在の再生中の音量を取得します。 再生中の場合も音量を返します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVolume({} as PlayerIdOptions);

指定したピクセル数で再生中のサイズを設定します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setSize({} as SetSizeOptions);

現在の再生速度を取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackRate({} as PlayerIdOptions);

再生速度を指定した値で設定します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackRate({} as SetPlaybackRateOptions);

現在の動画の再生速度のリストを取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailablePlaybackRates({} as PlayerIdOptions);

再生リストのループを有効または無効にします。 有効にすると、再生リストは最後の動画の終了後に再生を開始します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setLoop({} as SetLoopOptions);

再生リストのシャッフルを有効または無効にします。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setShuffle({} as SetShuffleOptions);

バッファリングされた動画の割合を取得します。 より信頼性の高い「getVideoBytesLoaded/getVideoBytesTotal」代替APIです。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoLoadedFraction({} as PlayerIdOptions);

getPlayerState

__CAPGO_KEEP_1__

__CAPGO_KEEP_2__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlayerState({} as PlayerIdOptions);

getAllPlayersEventsState

__CAPGO_KEEP_3__

__CAPGO_KEEP_4__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAllPlayersEventsState();

getCurrentTime

__CAPGO_KEEP_5__

__CAPGO_KEEP_0__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getCurrentTime({} as PlayerIdOptions);

toggleFullScreen

__CAPGO_KEEP_0__

__CAPGO_KEEP_7__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.toggleFullScreen({} as ToggleFullScreenOptions);

__CAPGO_KEEP_2__の現在の再生品質を取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackQuality({} as PlayerIdOptions);

__CAPGO_KEEP_2__の推奨再生品質を設定します。 ネットワーク条件によって実際の品質は異なる場合があります。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackQuality({} as SetPlaybackQualityOptions);

__CAPGO_KEEP_2__の現在のビデオの利用可能な品質レベルの一覧を取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailableQualityLevels({} as PlayerIdOptions);

__CAPGO_KEEP_2__の現在のビデオの長さ(秒)を取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getDuration({} as PlayerIdOptions);

現在の動画のYouTube.com URLを取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoUrl({} as PlayerIdOptions);

現在の動画の埋め込みcodeを取得します。 HTML iframe埋め込みcodeを返します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoEmbedCode({} as PlayerIdOptions);

現在のプレイリスト内の動画IDの配列を取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylist({} as PlayerIdOptions);

現在再生中の動画のプレイリスト内のインデックスを取得します。

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylistIndex({} as PlayerIdOptions);

__CAPGO_KEEP_2__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getIframe({} as PlayerIdOptions);

addEventListener

__CAPGO_KEEP_3__

__CAPGO_KEEP_4__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
YoutubePlayer.addEventListener({
playerId: 'my-player',
eventName: 'onStateChange',
listener: (event) => {
console.log('Player state:', event.data);
},
});

removeEventListener

__CAPGO_KEEP_5__

__CAPGO_KEEP_6__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.removeEventListener({} as PlayerEventListenerOptions<TEvent>);

__CAPGO_KEEP_7__

__CAPGO_KEEP_8__
export interface PlayerIdOptions {
playerId: string;
}
export interface SeekToOptions extends PlayerIdOptions {
playerId: string;
seconds: number;
allowSeekAhead: boolean;
}
export interface VideoByIdMethodOptions extends PlayerIdOptions {
playerId: string;
options: IVideoOptionsById;
}
export interface VideoByUrlMethodOptions extends PlayerIdOptions {
playerId: string;
options: IVideoOptionsByUrl;
}
export interface PlaylistMethodOptions extends PlayerIdOptions {
playerId: string;
playlistOptions: IPlaylistOptions;
}
export interface PlayVideoAtOptions extends PlayerIdOptions {
playerId: string;
index: number;
}
export interface SetVolumeOptions extends PlayerIdOptions {
playerId: string;
volume: number;
}
export interface SetSizeOptions extends PlayerIdOptions {
playerId: string;
width: number;
height: number;
}
export interface SetPlaybackRateOptions extends PlayerIdOptions {
playerId: string;
suggestedRate: number;
}
export interface SetLoopOptions extends PlayerIdOptions {
playerId: string;
loopPlaylists: boolean;
}
export interface SetShuffleOptions extends PlayerIdOptions {
playerId: string;
shufflePlaylist: boolean;
}
export interface ToggleFullScreenOptions extends PlayerIdOptions {
playerId: string;
isFullScreen: boolean | null | undefined;
}

このページはプラグインの src/definitions.ts上流で変更されたパブリック API を再度同期するには、

Capacitor を使用している場合 Getting Started を使用してダッシュボードと __CAPGO_KEEP_0__ の操作を計画する場合、 Capacitor を使用してnative機能を実装するには、@API/__CAPGO_KEEP_1__-youtube-player を使用します。 Using @capgo/capacitor-youtube-player のnative機能を使用するには、@capgo/capacitor-youtube-player を使用します。 for the native capability in Using @capgo/capacitor-youtube-player, API Overview 実装詳細については API の概要を参照してください。 概要 実装詳細については Introduction を参照してください。 API のキー 実装詳細については API のキー、および デバイス 編集ページ