2

そこで、Android TV のドキュメントに従って、サンプル アプリを次の場所からダウンロードしました。

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

実際の nexus デバイスで実行しましたが、ほとんどのアプリは正常に動作します。私が最も興味を持っている部分は、私にとってはうまくいきません。

ホーム画面で Google 検索を使用して何かを検索しようとすると、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 に配置されるカーソルが常に空であることがわかります。おそらく、クエリのフォーマット方法に問題があります。私は今クエリの構築で遊んでいます。うまくいったら、ポストバックします。

4

1 に答える 1

-3

Android TV 検索は、標準の Android 検索メカニズムを使用して、サード パーティのアプリを検索します。Android の検索メカニズムに関する API ガイドは、こちらでご覧いただけます

また、検索メカニズムを示す「Searchable Dictionary」と呼ばれる従来のサンプル アプリも参照できます。これは、Android SDK サンプル アプリにあります。「SUGGEST_COLUMN_」という接頭辞が付いた多くの列名は、アプリが提供できるデータ フィールドを表す SearchManager クラスで定義されています

Android Lollipop リリースでは、Android TV 検索用に設計された新しい列がいくつか導入されています。新しく追加された列はここにあります。

いくつかの重要な列は次のとおりです。

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

于 2015-03-25T20:13:21.940 に答える