アプリ デベロッパー向け Watch Next ガイドライン
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Watch Next チャンネルにコンテンツを挿入する場合は、以下のガイドラインに従ってください。
Watch Next チャンネルに含めるコンテンツの種類
アプリのプログラマティックな追加は、従来の映画やテレビ番組に限定してください。クリップやその他の短い形式のコンテンツは追加しないでください。
視聴途中の映画を含める
視聴途中の映画を Watch Next チャンネルに追加するには、TYPE_MOVIE
を使用します。開始されているものの、次のガイドラインに基づいて終了していない場合、その映画は未視聴となります。
- ユーザーが 3% を超えるか 2 分を超えるかのいずれか早い方で視聴すると、映画が開始されます。
- 終了クレジットが開始されると、映画は終了します。この場合、Watch Next チャンネルに追加しないでください。この状態は、エンド クレジットを自動検出する技術か、コンテンツの長さに基づく近似値を使用して判断できます。
途中まで再生したテレビ番組のエピソードを含める
TYPE_TV_EPISODE
を使用して、視聴途中の番組エピソードを Watch Next チャンネルに追加します。開始されているものの、以下のガイドラインに基づいて終了していない場合、そのエピソードは未視聴となります。
- ユーザーが 2 分以上視聴した場合、エピソードが開始します。
- エンド クレジットを開始すると、そのエピソードは終了します。この場合、Watch Next チャンネルに追加しないでください。この状態は、エンド クレジットを自動検出する技術や、コンテンツの長さに基づく近似値(エピソードの残り時間が 3 分未満など)を使用して判断できます。
新しいテレビ番組エピソードと次のテレビ番組エピソードを処理する
次のガイドラインに基づいて、ユーザーが開始したシリーズの新しいエピソードと次のエピソードを、TYPE_TV_EPISODE
を使用して Watch Next チャンネルに追加します。
- ユーザーは、シリーズのいずれかのエピソードを 2 分以上視聴した場合、または導入が完了してから 1 分以上視聴した場合、シリーズを開始できます。
- ユーザーがシリーズを開始してエピソードを最後まで再生し、シリーズの次のエピソードがサービスで提供されている場合は、
WATCH_NEXT_TYPE_NEXT
を使用してこの次のエピソードを Watch Next チャンネルに追加します。
- ユーザーがシリーズの最新エピソードをすべて把握していて、新しいシーズンやエピソードが利用できるようになった場合は、
WATCH_NEXT_TYPE_NEW
を使用してこの新しいエピソードを Watch Next チャンネルに追加します。ユーザーがシリーズを最後に視聴してからの経過期間(1 年以上後など)に関係なく、新しいエピソードを追加します。
アイテムを Watch Next チャンネルに追加するタイミング
以下のガイドラインに沿って、視聴途中のシリーズの視聴途中のコンテンツと新しいエピソードを Watch Next チャンネルに追加します。
視聴途中のコンテンツを追加するタイミング
ユーザーに未視聴のコンテンツがある場合、次のいずれかが発生したらすぐにそのコンテンツを Watch Next チャンネルに追加します。
- ユーザーが Android TV でアプリを終了した。
- ユーザーがコンテンツの再生を 5 分以上一時停止または停止した。
このようなシナリオでは、未視聴のコンテンツをすぐに公開します。最大レイテンシは 5 秒です。たとえば、ユーザーが Android TV アプリを終了した場合、Watch Next API を使用して未視聴のアイテムを 5 秒以内に公開します。
視聴が行われた場所に関係なく、視聴途中のコンテンツを Watch Next API を使用して Android TV にパブリッシュします。たとえば、ユーザーが Chrome ブラウザで映画を視聴中に一時停止した場合、Android TV のアプリは、視聴途中のコンテンツを最長 5 秒のレイテンシで直ちに Android TV に公開する必要があります。
新しいエピソードを追加するタイミング
以下の条件をすべて満たしている場合、以前に視聴したシリーズの新しいエピソードをすぐに追加します。
- 新しいエピソードがサービスで視聴可能である。
- ユーザーが前のエピソードを視聴し終わった。
- ユーザーは新しいエピソードを視聴する権利がある。
ユーザーがシリーズを最後に視聴してからの経過期間(1 年以上後など)に関係なく、新しいエピソードを追加します。
コンテンツと UI の更新の対象
コンテンツが Watch Next チャンネルに公開されるようにするには、ユーザーがアプリ内でコンテンツを操作する必要があります。
同じテレビシリーズの複数のエピソードを追加しないでください。たとえば、視聴途中のエピソードと、同じシリーズの新しいエピソードを追加しないでください。
1 つのアイテムが変更されたときに「次のおすすめ」行内のすべてのアイテムを更新しないようにする。
前回の更新以降にユーザーが操作したアイテムのみを更新します。
Watch Next アイテムに含めるデータ
Watch Next の各アイテムには、以下の情報を含めます。
- Watch Next のタイプ
- 前回の再生位置
- 所要時間
- 前回のエンゲージメント時間
- 動画プログラムの属性: 動画プログラムの属性の表に記載されている必須属性に加えて、すべての動画プログラムに Content ID 属性を設定する必要があります。Content ID 属性は、メディア アクション フィードで指定する内部 ID と一致する必要があります。これにより、Android TV はアセットをより効果的に調整でき、ユーザーに信頼性の高い機能を提供できます。
Watch Next チャンネルからコンテンツを削除する
ユーザーが映画の視聴を終了した後、またはテレビシリーズの未視聴のエピソードがなくなったら、コンテンツを削除します。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-27 UTC。"],[],[],null,["# Watch Next guidelines for app developers\n\nFollow these guidelines when you insert content into the\nWatch Next channel.\n\nTypes of content to include in the Watch Next channel\n-----------------------------------------------------\n\nLimit your app's programmatic additions to traditional movies and TV\nshows. Don't add clips and other short-form content.\n\n### Include unfinished movies\n\nAdd unfinished movies to the Watch Next channel using\n[`TYPE_MOVIE`](/training/tv/discovery/video-programs). A movie is unfinished\nif it is started but not finished based on the following guidelines:\n\n- A movie is started if the user watches more than 3% or 2 minutes, whichever timestamp is earlier.\n- A movie is finished if the end credits start. In this case, do *not* add it to the Watch Next channel. You can determine this state using a technology that auto-detects the end credits or use an approximation based on the content length.\n\n### Include unfinished TV episodes\n\nAdd unfinished TV episodes to the Watch Next channel using\n[`TYPE_TV_EPISODE`](/training/tv/discovery/video-programs). An episode is\nunfinished if it is started but not finished based on the following guidelines:\n\n- An episode is started if the user watches more than 2 minutes.\n- An episode is finished if the end credits start. In this case, do *not* add it to the Watch Next channel. You can determine this state using a technology that auto-detects the end credits or use an approximation based on the content length, such as less than 3 minutes remaining in an episode.\n\nHandle new TV episodes and next TV episodes\n-------------------------------------------\n\nAdd new episodes and next episodes of series that the user has started,\nbased on the following guidelines, to the Watch Next channel using\n[`TYPE_TV_EPISODE`](/training/tv/discovery/video-programs):\n\n- The user starts a series if they watch more than 2 minutes, or 1 minute after the introduction completes, of any episode in the series.\n- If the user starts a series and finishes an episode, and the next episode in the series is available in your service, add this next episode to the Watch Next channel using [`WATCH_NEXT_TYPE_NEXT`](/training/tv/discovery/watch-next-programs).\n- If the user is fully caught up on all current episodes in a series and a new season or episode becomes available, add this new episode to the Watch Next channel using [`WATCH_NEXT_TYPE_NEW`](/training/tv/discovery/watch-next-programs). Add the new episode no matter how long it has been since the user last watched the series, such as after a year or more.\n\nWhen to add an item to the Watch Next channel\n---------------------------------------------\n\nAdd unfinished content and new episodes of previously viewed series\nto the Watch Next channel according to the following guidelines.\n\n### When to add unfinished content\n\nWhen a user has an unfinished piece of content, add that content to the Watch\nNext channel immediately when either of the following occur:\n\n- The user exits the app on Android TV.\n- The user pauses or stops playback for a piece of content for more than 5 minutes.\n\nIn these scenarios, publish any unfinished content immediately, with a\nmaximum latency of 5 seconds. For example, when the user exits the\nAndroid TV app, publish any unfinished items using the Watch Next\nAPI within 5 seconds.\n\nPublish any unfinished content to Android TV using the Watch Next API\nregardless of where the viewing occurred. For example, if the user watches a\nmovie in their Chrome browser and pauses it, then the app on the Android TV\nmust publish the unfinished content to the Android TV immediately, with a\nmaximum latency of 5 seconds.\n\n### When to add new episodes\n\nAdd new episodes of a previously watched series\nimmediately when all of the following are true:\n\n- The new episode is available on your service.\n- The user completes the previous episode.\n- The user is entitled to watch the new episode.\n\nAdd the new episode no matter how long it has been since the user last watched\nthe series, such as after a year or more.\n\n### Eligibility of content and UI updates\n\nThe user must interact with the content within your app for the content\nto be eligible to be published to the Watch Next channel.\n\nDon't add more than one episode from the same TV series. For example, don't add\nan unfinished episode and a new episode from the same series.\n\nDon't update all items in the **Play Next** row when one item changes.\n*Only* update the item the user has interacted with since the last update.\n\nWhat data to include for a Watch Next item\n------------------------------------------\n\nInclude the following for each Watch Next item:\n\n- Watch Next type\n- Last playback position\n- Duration\n- Last engagement time\n- Video program attributes: in addition to the required attributes marked in the [video program attributes table](/training/tv/discovery/video-programs#attribute-table), the [Content ID attribute](/reference/androidx/tvprovider/media/tv/PreviewProgram.Builder#setContentId(java.lang.String)) must be set for every video program. The Content ID attribute must match the internal ID you provide in the [Media Actions](https://developers.google.com/actions/media) feed. This lets Android TV reconcile the asset more effectively and provides a high-confidence feature to users.\n\nRemove content from the Watch Next channel\n------------------------------------------\n\nRemove content once the user finishes watching a movie or there\nis no unwatched available episode for a TV series."]]