当电视应用体验一致、符合逻辑且可预测时,用户会很喜欢。他们应该能够在您的应用内以及整个 Android TV 中轻松导航,而不会迷失方向或不得不“重置”UI 并重新开始。用户喜欢清晰、色彩丰富且功能齐全的界面,这能让体验变得神奇。考虑到这些,您可以创建一款完美适配 Android TV 并能达到用户期望的应用。
这些核对清单涵盖了应用和游戏开发的主要方面,以帮助确保您的应用提供最佳体验。仅适用于游戏的额外注意事项在游戏部分中介绍。
关于 Android TV 应用通过 Google Play 分发的资格标准,请参阅电视应用质量。
电视外形规格支持
这些核对清单项适用于游戏和应用。
- 在清单中,使用
CATEGORY_LEANBACK_LAUNCHER
过滤器标识主电视 Activity。 - 为您的应用支持的每种语言提供主屏幕横幅,其特点如下:
- 横幅尺寸为 320x180 像素。
- 横幅资源位于
drawables/xhdpi
目录中。 - 横幅图片包含用于标识应用的本地化文本。
- 考虑您的应用是否需要阻止设备进入环境模式。这对于媒体播放应用尤其重要。
- 不要声明可能不支持的硬件要求。
- 确保您的权限不暗示硬件要求。
用户界面设计
这些核对清单项适用于游戏和应用。
- 通过设置
android:screenOrientation="landscape"
来指定横向 Activity。 - 为横向模式提供适当的布局资源。
- 确保文本和控件足够大,以便从远处可见。
- 为 HDTV 屏幕提供高分辨率位图和图标。
- 确保您的图标和徽标符合 Android TV 规范。
- 在您的布局中考虑过扫描。
- 在主动播放用户发起的媒体内容时,阻止设备进入环境模式。
- 确保每个 UI 元素都能与方向键和游戏控制器配合使用。请参阅电视导航和处理电视硬件。
- 当用户浏览内容时,更改背景图片。
- 在 Leanback Fragment 中自定义背景颜色以符合您的品牌。
- 确保您的 UI 不需要触摸屏。请参阅触摸屏和声明不需要触摸屏。
- 遵循有效广告指南。
- 要引导用户完成一系列决策,请使用 Leanback 库的引导式步骤 API。
搜索和内容发现
这些核对清单项适用于游戏和应用。
电视主屏幕
这些核对清单项适用于主屏幕的布局和内容。
频道
- 提供一个能够代表频道内容的有意义的名称。不要使用您的应用名称作为频道名称。
- 除非与用户有互动,否则不要更改频道名称。
- 为每个频道包含一个关联图标。该图标不必是您的应用的确切图标;它可以是频道内容的品牌表示。
- 使每个频道独一无二,不要模仿“接下来播放”行的功能。例如,让用户继续观看视频中他们离开的地方,这不是频道的有效用途。
频道内容
- 将频道中的每个节目限制为单个内容。一个节目不得包含视频合集。
- 不要将节目用于宣传消息或广告。
- 为每个节目提供合适的描述,并正确映射其元数据。例如,内容分级不得出现在标题应出现的位置。
- 不要裁剪或拉伸表示节目内容的预览图片。它们必须符合可用的宽高比之一。
- 用户选择节目后立即开始播放。
接下来播放
- 除非用户以某种方式与内容进行了互动,否则不要将内容添加到“接下来播放”行。例如,您可以添加用户当前正在观看的剧集的下一集,但当用户完成当前剧集时,不要添加相关但不同的剧集。
- 将“接下来播放”的内容限制为传统的电视节目、电影或活动。不要将剪辑添加到“接下来播放”行。
播放应用
这些核对清单项适用于执行媒体播放的应用。
- 注册媒体会话,以通知平台媒体播放状态,并允许将播放控制委派给应用。
- 在屏幕上播放视频时,设置
FLAG_KEEP_SCREEN_ON
标志,以防止设备在播放期间进入待机或环境模式。 - 使用 Media Controller Test 和 Media Session Validator 验证媒体命令是否准确公开元数据并控制播放。
- 遵守环境模式相关质量指南。环境模式能让用户在观看会话之间保持安静娱乐,并防止屏幕烧屏。
- 分析您应用的内存,并务必检查
ActivityManager.isLowRamDevice()
以发现低内存设备。对于这些设备,您必须遵守优化内存使用指南中的要求。
游戏
这些核对清单项适用于游戏。
- 在清单中设置
isGame
标志,以便您的游戏出现在主屏幕的游戏部分。 - 确保游戏控制器支持不依赖于“开始”、“选择”或“菜单”按钮。并非所有控制器都具有这些按钮。
- 使用通用游戏手柄图形,不带特定控制器品牌,以显示游戏按钮映射。
- 检查以太网和 Wi-Fi 连接。
- 为用户提供简洁的退出应用方式。
分发到 Android TV
要了解如何分发到 Android TV,请参阅在 Google Play 上发布电视应用的详细指南。