将节目添加到“观看下一项”频道

“观看下一项”频道是主屏幕上应用行之后出现的第二行。系统创建并维护此频道。您的应用可以向“观看下一项”频道添加节目:用户标记为有趣的节目,用户中途停止观看的节目,或与用户正在观看的内容相关的节目(例如,剧集中的下一集或节目的下一季)。

“观看下一项”频道有一些限制:您的应用无法移动、删除或隐藏“观看下一项”频道的行。

步骤

将节目插入“观看下一项”频道类似于 将节目插入您自己的频道。有关“观看下一项”的具体细节,请参阅以下部分。

在 Google TV 上发布到“观看下一项”频道(显示为“继续观看”)需要 Google 通过认证流程事先批准,并使用服务器端处理根据节目的属性对节目进行排序。要开始认证流程,请提交此 链接表格

将内容插入“观看下一项”频道时,您必须遵循以下指南

选择节目类型

有四种类型的“观看下一项”节目。选择合适的类型

类型注释
WATCH_NEXT_TYPE_CONTINUE用户在观看内容时停止了观看。
WATCH_NEXT_TYPE_NEXT用户正在观看的剧集中的下一个可用节目。例如,如果用户正在观看某个剧集的第 3 集,则应用可以建议他们接下来观看第 4 集。
WATCH_NEXT_TYPE_NEW现在有明显延续用户正在观看的内容的新内容。例如,用户正在观看某个剧集的第 5 集,第 6 集现已可供观看。
WATCH_NEXT_TYPE_WATCHLIST由系统或应用在用户保存节目时插入。

有关更多信息,请参阅 “观看下一项”属性

使用 WatchNextProgram 生成器

使用 WatchNextProgram.Builder。有关更多信息,请参阅 “观看下一项”属性

Kotlin

val builder = WatchNextProgram.Builder()
builder.setType(TvContractCompat.WatchNextPrograms.TYPE_MOVIE)
        .setWatchNextType(TvContractCompat.WatchNextPrograms.WATCH_NEXT_TYPE_CONTINUE)
        .setLastEngagementTimeUtcMillis(time)
        .setTitle("Title")
        .setDescription("Program description")
        .setPosterArtUri(uri)
        .setIntentUri(uri)
        .setInternalProviderId(appProgramId)

val watchNextProgramUri = context.contentResolver
        .insert(TvContractCompat.WatchNextPrograms.CONTENT_URI,
                builder.build().toContentValues())

Java

WatchNextProgram.Builder builder = new WatchNextProgram.Builder();
builder.setType(TvContractCompat.WatchNextPrograms.TYPE_MOVIE)
        .setWatchNextType(TvContractCompat.WatchNextPrograms.WATCH_NEXT_TYPE_CONTINUE)
        .setLastEngagementTimeUtcMillis(time)
        .setTitle("Title")
        .setDescription("Program description")
        .setPosterArtUri(uri)
        .setIntentUri(uri)
        .setInternalProviderId(appProgramId);

Uri watchNextProgramUri = context.getContentResolver()
        .insert(TvContractCompat.WatchNextPrograms.CONTENT_URI, builder.build().toContentValues());

使用 TvContractCompat.buildWatchNextProgramUri(long watchNextProgramId) 创建您需要更新“继续观看”节目的 Uri

当用户将节目添加到“继续观看”频道时,系统会将节目复制到该行。它会发送意图 TvContractCompat.ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT 来通知应用程序该节目已添加。意图包含两个额外信息:已复制的节目 ID 和在“继续观看”频道中为节目创建的节目 ID。