Android TV使用Android 搜索界面从已安装的应用中检索内容数据并将搜索结果提供给用户。 这些结果可以包含您应用的内容数据,以便用户即时访问您应用中的内容。
当用户在搜索对话框中输入字符时,您的应用必须向Android TV提供数据字段,从中生成建议的搜索结果。 要做到这一点,您的应用必须实施一个内容提供商 ,提供建议以及一个searchable.xml
描述内容提供商和Android TV其他重要信息的searchable.xml
配置文件。 您还需要一个处理用户选择建议的搜索结果时触发的意图的活动。 所有这些在添加自定义建议中都有更详细的描述。 这里描述了Android TV应用程序的要点。
本课程基于您在Android中使用搜索的知识,向您展示如何让您的应用在Android TV中搜索。 在学习本课之前,请确保您熟悉“ 搜索API”指南中介绍的概念。 另请参阅培训添加搜索功能 。
本讨论描述了Android Leanback示例应用程序中的一些代码,可在GitHub上找到。
注意: Android TV的搜索界面还会检索Google搜索服务器中已标记为与Google Watch操作配合使用的内容。 如果您通过观看动作标记将内容添加到Google的搜索索引中,则您的内容将显示在带有用户界面的Android TV搜索结果中,用户可以使用该界面开始查看应用中的内容。 有关观看动作的更多信息,请参阅电视和电影 ,并申请观看动作节目 。识别列
SearchManager
通过将它们表示为本地数据库的列来描述它所期望的数据字段。 无论您的数据格式如何,您都必须将数据字段映射到这些列,通常位于访问您的内容数据的类中。 有关构建将现有数据映射到必填字段的类的信息,请参阅构建建议表 。
SearchManager
类包含Android TV的多个列。 下面介绍一些更重要的栏目。
值 | 描述 |
---|---|
SUGGEST_COLUMN_TEXT_1 |
您的内容的名称(必填) |
SUGGEST_COLUMN_TEXT_2 |
您的内容的文字说明 |
SUGGEST_COLUMN_RESULT_CARD_IMAGE |
您的内容的图像/海报/封面 |
SUGGEST_COLUMN_CONTENT_TYPE |
媒体的MIME类型(必填) |