Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
Ring
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート
メインコンテンツへスキップ
このチュートリアルでは、ヘッドレスアプローチを使用してVegaアプリにクライアント側広告挿入(CSAI)を実装します。このアプローチでは、クライアント/サーバーアーキテクチャを使用し、JavaScript Interface(JSI)ベースのプロセス間通信(IPC)を介して、UIレイヤーのIPlayerClientインスタンスから、独立したサービスレイヤーのVideoPlayerインスタンスと通信します。コンテンツ用のメインプレーヤークライアントと、広告ブレーク中に共有ビデオサーフェスを置き換える広告プレーヤークライアントで構成される、デュアルプレーヤーアーキテクチャをセットアップします。 このチュートリアルの例は、シームレスな広告遷移のために広告を事前バッファリングする方法を示しています。CSAIの概念、テクニック、同期戦略に関する基本的な知識については、Vegaでのクライアント側広告挿入を参照してください。 このチュートリアルでは、次の方法を学習します。
  • プレーヤークライアントの参照とインポートを設定する
  • 広告マーカーを検出し、広告プレーヤークライアントを事前に初期化する
  • 広告がバッファリングされるまで待機した後、メインコンテンツを一時停止する
  • ビデオサーフェスを切り替えて広告を再生する
  • 広告の終了後にメインコンテンツに戻る

前提条件

  • Vega開発環境がセットアップされていること
  • Vega SDK v0.22以降
  • @amazon-devices/kepler-player-clientと@amazon-devices/kepler-player-serverの各パッケージがインストールされていること
  • メインコンテンツプレーヤークライアントが既に初期化され、サービスに接続されていること
  • React NativeとTypeScriptに関する基本的な知識

プレーヤークライアントの参照の設定

必要なパッケージをインポートし、メインプレーヤークライアント、広告プレーヤークライアント、セッションIDの参照を作成します。

広告マーカーの検出と広告プレーヤークライアントの事前初期化

位置リスナーで広告ブレークが近づいていることを検出したら、広告プレーヤークライアントをautoPlay=falseとして事前に初期化します。さらに、広告のバッファリング完了と終了を検出するためのリスナーを登録します。
  1. 位置リスナーを設定して、次に来る広告ブレークを検出します。
  2. 広告プレーヤークライアントの初期化関数を作成します。ステータスリスナーを登録して、READYとENDEDの状態を検出します。IPlayerSessionState.READYを利用できないプラットフォームでは、サービスはフォールバックとしてplayerReadyメッセージを送信します。

広告のバッファリングの待機とメインコンテンツの一時停止

広告プレーヤーからREADY(バッファリング完了)が通知され、位置リスナーで広告の開始時間になったことが検出されたら、メインコンテンツを一時停止します。

サーフェスの切り替えと広告の再生

メインコンテンツのステータスがPAUSEDに変わったら、メインサーフェスを消去して広告プレーヤーに引き渡します。

メインコンテンツへの復帰

広告が終了したら、広告サーフェスを消去し、広告プレーヤークライアントをクリーンアップして、メインコンテンツを再開します。

リソースのクリーンアップ

コンポーネントのマウントが解除されるかプレーヤーセッションが終了したら、広告プレーヤーの読み込みを解除し、リソースを解放します。

関連コンテンツ


最終更新日 2026年10月26日