音频节目的属性取决于内容的类型。节目类型会告知系统应预期哪些元数据,以便正确填充 UI。音频节目可以是以下类型之一:
使用 PreviewProgram.Builder 构建节目。您可以在构建器中每个 setter 的 Java 文档中阅读有关每个字段可能值的更多信息。
以下示例展示了如何使用 PreviewProgram.Builder
PreviewProgram program = new PreviewProgram.Builder()
.setChannelId(channelId)
.setTitle(clip.getTitle())
.setDescription(clip.getDescription())
.setType(TvContractCompat.PreviewPrograms.TYPE_ALBUM)
// Set required attributes
.build();
下表显示了可分配给每种音频节目的属性,以及指向 PreviewProgram.Builder 中相应 setter 的链接。标有 ✔ 的属性是必需的;标有 (✔) 的属性是可选的。
| 属性 | 曲目 | 专辑 | 艺术家 | 播放列表 | 电台 |
|---|---|---|---|---|---|
| 作者 | (✔) | (✔) | (✔) | ||
| 可用性 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 频道 ID | ✔ | ✔ | ✔ | ✔ | ✔ |
| 内容 ID | (✔) | (✔) | (✔) | (✔) | (✔) |
| 时长 | ✔ | ||||
| 流派 | (✔) | (✔) | (✔) | (✔) | (✔) |
| Intent URI | ✔ | ✔ | ✔ | ✔ | ✔ |
| 互动计数 | (✔) | (✔) | (✔) | ||
| 互动类型 | (✔) | (✔) | (✔) | ||
| 内部提供商 ID | (✔) | (✔) | (✔) | (✔) | (✔) |
| 直播 | (✔) | ||||
| Logo URI (*) | (✔) | ||||
| Logo 内容说明 (*) | (✔) | ||||
| 报价 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 海报图片宽高比 | ✔ | ✔ | ✔ | ✔ | ✔ |
| 海报图片 URI | ✔ | ✔ | ✔ | ✔ | ✔ |
| 预览音频 URI | (✔) | (✔) | (✔) | (✔) | (✔) |
| 预览视频 URI | (✔) | (✔) | (✔) | (✔) | (✔) |
| 发布日期 | (✔) | (✔) | |||
| 简短说明 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 起始价格 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 缩略图宽高比 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 缩略图 URI | (✔) | (✔) | (✔) | (✔) | (✔) |
| 标题 | ✔ | ✔ | ✔ | ✔ | ✔ |
| 视频高度 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 视频宽度 | (✔) | (✔) | (✔) | (✔) | (✔) |
| 权重 | (✔) | (✔) | (✔) | (✔) | (✔) |