如何使应用程序内容可供Android电视搜索

时间:2015-03-25 18:18:26

标签: android search android-tv

所以我按照android tv文档并从这里下载了示例应用程序:

https://github.com/googlesamples/androidtv-Leanback

我让它在一个真正的nexus设备上运行,大多数应用程序运行正常。我最感兴趣的部分虽然不适合我。

当我尝试在主屏幕上使用谷歌搜索搜索某些内容时,我根本没有得到leanback示例应用程序的搜索结果,我在示例应用程序中看到了logcat中的以下错误。

1822-1838/com.example.android.leanback E/JavaBinder﹕ *** Uncaught remote exception!  (Exceptions are not yet supported across processes.)
android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
        at android.database.AbstractCursor.checkPosition(AbstractCursor.java:426)
        at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:136)
        at android.database.AbstractWindowedCursor.getType(AbstractWindowedCursor.java:130)
        at com.example.android.leanback.PaginatedCursor.<init>(PaginatedCursor.java:65)
        at com.example.android.leanback.VideoDatabase.query(VideoDatabase.java:170)
        at com.example.android.leanback.VideoDatabase.getWordMatch(VideoDatabase.java:150)
        at com.example.android.leanback.VideoContentProvider.getSuggestions(VideoContentProvider.java:112)
        at com.example.android.leanback.VideoContentProvider.query(VideoContentProvider.java:85)
        at android.content.ContentProvider.query(ContentProvider.java:950)
        at android.content.ContentProvider$Transport.query(ContentProvider.java:210)
        at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:112)
        at android.os.Binder.execTransact(Binder.java:446)

我在自己的应用程序中遵循了这个示例,我得到了类似的错误以及其他错误,因为我确信我没有以正确的方式连接所有内容。如果任何人都可以搜索应用内容,我会很感激有关使其正常工作的一些意见。

修改

进行一些调试后,我可以看到放入paginatedCursor的光标始终为空。它可能与查询格式的方式有关。我现在正在玩查询大楼,如果我让它工作,我会回帖。

1 个答案:

答案 0 :(得分:-2)

Android TV Search使用标准的Android搜索机制来搜索第三方应用。您可以找到有关Android搜索机制here的API指南。

您还可以查看名为“Searchable Dictionary”的遗留示例应用程序,演示搜索机制。它可以在Android SDK示例应用中找到。在SearchManager类中定义了许多以“SUGGEST_COLUMN_”为前缀的列名,表示应用可以提供的数据字段,例如here

在Android Lollipop版本中,推出了一些专为Android TV搜索而设计的新专栏。您可以找到新添加的列here.

一些重要的专栏是:

SUGGEST_COLUMN_TEXT_1 SUGGEST_COLUMN_TEXT_2 SUGGEST_COLUMN_RESULT_CARD_IMAGE SUGGEST_COLUMN_CONTENT_TYPE SUGGEST_COLUMN_VIDEO_WIDTH SUGGEST_COLUMN_VIDEO_HEIGHT SUGGEST_COLUMN_PRODUCTION_YEAR SUGGEST_COLUMN_DURATION