我正在尝试使我的Android TV应用程序可搜索,并且正在测试全局搜索。我已经创建了ContentProvider,当我搜索某些东西时会调用它的查询方法。当我填充一个游标并返回它时,问题就出现了,在那一刻,全局搜索崩溃了,而LogCat对此一无所获。我在本节中的代码是这样的:
MatrixCursor matrixCursor = new MatrixCursor(new String[]{
"_id",
SearchManager.SUGGEST_COLUMN_TEXT_1,
SearchManager.SUGGEST_COLUMN_CONTENT_TYPE,
SearchManager.SUGGEST_COLUMN_PRODUCTION_YEAR,
SearchManager.SUGGEST_COLUMN_INTENT_ACTION,
SearchManager.SUGGEST_COLUMN_INTENT_DATA,
SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID
});
matrixCursor.addRow(new Object[]{
1,
"movie 1",
"video/mp4",
2014,
Intent.ACTION_SEARCH,
"content://myauthority/videos/",
1
});
matrixCursor.addRow(new Object[]{
2,
"video 2",
"video/mp4",
2013,
Intent.ACTION_SEARCH,
"content://myauthority/videos/",
2
});
matrixCursor.addRow(new Object[]{
2,
"video 3",
"video/mp4",
2012,
Intent.ACTION_SEARCH,
"content://myauthority/videos/",
3
});
return matrixCursor;
我只是想返回一个测试游标,以查看全局搜索的工作原理,但是我必须做错了什么。
我发现了问题。我只觉得SearchManager.SUGGEST_COLUMN_TEXT_1
,SearchManager.SUGGEST_COLUMN_CONTENT_TYPE
和SearchManager.SUGGEST_COLUMN_PRODUCTION_YEAR
被需要的领域(这是Android开发电视指南说的),但SearchManager.SUGGEST_COLUMN_RESULT_CARD_IMAGE
也是必需的。没有卡图像,全局搜索将崩溃,可能是因为尝试设置空位图。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句