面向应用开发者的“接下来观看”准则
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
在“接下来观看”频道中插入内容时,请遵循以下准则。
“接下来观看”频道应包含的内容类型
将应用的程序化内容添加到传统电影和电视节目。请勿添加剪辑和其他短视频内容。
包含未看完的电影
使用 TYPE_MOVIE
向“接下来观看”频道添加未看完的电影。如果根据以下准则判断,影片已开始播放,但没有结束,则视为影片未完成:
- 如果用户观看时长超过 3% 或 2 分钟(以较早者为准),电影就会开始播放。
- 如果开始播放片尾演职员表,则表示影片已播放完毕。在这种情况下,不要将其添加到“接下来观看”频道。您可以使用自动检测片尾演职员表的技术或根据内容时长估计来确定此状态。
包含未看完的电视剧集
使用 TYPE_TV_EPISODE
向“接下来观看”频道添加未看完的电视剧集。根据以下准则,如果某个分集已开始播放,但未结束,则表示该分集已结束:
- 如果用户观看时间超过 2 分钟,分集就会开始播放。
- 如果开始显示片尾演职员表,则该剧集已结束。在这种情况下,不要将其添加到“接下来观看”频道。您可以使用自动检测片尾演职员表的技术或根据内容时长估计(例如,剧集只剩下不到 3 分钟)来确定此状态。
处理新的电视剧集和下一集
根据以下准则,使用 TYPE_TV_EPISODE
将用户已开始播放的新剧集和连续剧的下一集添加到“接下来观看”频道:
- 如果用户观看连续剧中任何剧集超过 2 分钟(或简介结束后 1 分钟再观看),则开始观看连续剧。
- 如果用户开始观看一个连续剧并看完一个剧集,并且您的服务中提供了该连续剧的下一集,请使用
WATCH_NEXT_TYPE_NEXT
将此剧集添加到“接下来观看”频道。
- 如果用户已看完连续剧中的所有当前剧集,有新的剧季或剧集可供观看,请使用
WATCH_NEXT_TYPE_NEW
将此新剧集添加到“接下来观看”频道。无论距离用户上次观看该连续剧多长时间(例如一年或更长时间后)开始添加新剧集,
何时向“接下来观看”频道添加内容
按照以下准则,向“接下来观看”频道添加之前观看过的连续剧的未看完内容和新剧集。
何时添加未看完的内容
如果用户有未看完的内容,当出现以下任一情况时,应立即将相应内容添加到“接下来观看”频道:
- 用户在 Android TV 上退出应用。
- 用户暂停或停止播放一段内容超过 5 分钟。
在这些情况下,请立即发布任何未看完的内容,最大延迟为 5 秒。例如,当用户退出 Android TV 应用时,请在 5 秒内使用 Watch Next API 发布所有未看完的内容。
无论用户观看在哪里,都可以使用 Watch Next API 将所有未看完的内容发布到 Android TV。例如,如果用户在 Chrome 浏览器中观看电影后将其暂停,则 Android TV 上的应用必须立即将未看完的内容发布到 Android TV,最长延迟为 5 秒。
何时添加新分集
当满足以下所有条件时,立即添加之前观看过的连续剧的新剧集:
- 新剧集在您的服务中推出。
- 用户看完上一集。
- 用户有权观看新剧集。
无论距离用户上次观看该连续剧已经过去多长时间(例如一年或更长时间后),都要添加新剧集。
内容和界面更新的资格条件
用户必须与应用内的内容互动,这些内容才能发布到“接下来观看”频道。
请勿添加同一电视连续剧中的多个剧集。例如,不要同时添加未看完的剧集和同一连续剧的新剧集。
当一项内容发生更改时,不要更新接下来播放行中的所有内容。仅更新自上次更新以来用户与之互动过的商品。
要为“接下来观看”内容添加哪些数据
为每个“接下来观看”内容添加以下各项:
- “接下来观看”类型
- 上次播放位置
- 时长
- 上次互动时长
- 视频节目属性:除了视频节目属性表中标记的必需属性之外,还必须为每个视频节目设置 Content ID 属性。Content ID 属性必须与您在 Media Actions Feed 中提供的内部 ID 一致。这样可让 Android TV 更有效地调整资源,并为用户提供高度可靠的功能。
从“接下来观看”频道中移除内容
在用户看完某部电影或某部电视连续剧没有可观看的未观看剧集后,移除相应内容。
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-27。
[null,null,["最后更新时间 (UTC):2025-07-27。"],[],[],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."]]