Classic/VPC環境で利用できます。
TV SDKで Google Interactive Media Ads(IMA)広告を連携する方法をご案内します。
ネイティブビルド設定(必須)
IMA広告を使用するには、ネイティブビルドフラグを有効にする必要があります。
tvOS(ios/Podfile)
tvOSでは、Podfileに次のフラグを追加します。
$RNVideoUseGoogleIMA = true
設定後、pod installを実行します。
Android TV(android/gradle.properties)
Android TVでは、gradle.propertiesに次のフラグを追加します。
RNVideo_useExoplayerIMA=true
注意
フラグを変更した後は、必ずアプリを再ビルドする必要があります。Metroのホットリロードでは反映されません。
広告設定
options.ads プロパティを使用して VAST/VMAP広告タグを設定します。
<VpePlayer
accessKey="YOUR_ACCESS_KEY"
options={{
playlist: [{
file: 'https://example.com/video.m3u8',
poster: 'https://example.com/poster.jpg',
}],
autostart: true,
ads: {
tagUrl: 'https://pubads.g.doubleclick.net/gampad/ads?...',
enabled: true, // デフォルト: true、falseで無効化
},
}}
onEvent={(event) => {
switch (event.type) {
case 'adStart':
console.log('広告開始');
break;
case 'adComplete':
console.log('広告終了');
break;
case 'adSkip':
console.log('広告スキップ');
break;
case 'adError':
console.log('広告エラー', event.data);
break;
}
}}
onBack={() => navigation.goBack()}
/>
広告動作
IMA広告の動作方式は、次の通りです。
- 広告再生中のコントロールバーを自動非表示、およびリモコン入力を無視
- ネイティブ IMA SDKによる独自の UIレンダリング
- 広告終了/スキップ/エラーの後、コンテンツを自動再生
広告イベント
受信できる広告イベントは次の通りです。
| イベント | 説明 |
|---|---|
adStart / adStarted |
広告開始 |
adComplete |
広告終了 |
adSkip / adSkipped |
広告スキップ |
adError |
広告エラー |
adLoaded |
広告ロード完了 |
adBreakStart / adBreakEnd |
広告ブレイクの開始/終了 |