Как обрабатывать как результаты быстрого поиска, так и последние предложения по поиску?

Я пытаюсь реализовать как недавние предложения, так и пользовательские предложения в глобальном поиске в одном приложении. Они оба используют один и тот же путь в провайдере, поэтому кажется, что для них невозможно вернуть разные результаты. Например, только недавний поиск предложений и реальных результатов поиска в окне быстрого поиска.

Любая идея о том, как это сделать?

Solutions Collecting From Web of "Как обрабатывать как результаты быстрого поиска, так и последние предложения по поиску?"

Если посмотреть на файл с возможностью поиска , похоже, вы должны использовать разные значения android: searchSuggestPath для устранения двусмысленности между ними.

Это возможно , хотя для этого требуется некоторое обходное решение . Мне еще предстоит полностью проверить это на нескольких платформах, но вот моя реализация: Collectionista SearchRecentSuggestionsContentProvider.java

Поскольку последние предложения являются наиболее ограничительными, вы должны обернуть своего провайдера провайдером, который необходим для пользовательских предложений, и сделать сквозной доступ к последним предложениям.

Важно, чтобы вы понимали, что вам не нужно дублировать searchable.xml или любой из блоков в манифесте. Вы используете тот же самый авторитет.

Кроме того, последние предложения ограничивают использование android:searchSuggestSelection=" ?" , Поэтому вам придется иметь дело с тем, что у вашего провайдера для запросов пользовательских предложений. Вы хотите использовать android:searchSuggestPath вероятно, так что понимайте, что запросы для последних предложений поступают на этот Uri и должны быть отправлены на путь Uri.

Оба предложения будут отображаться так же, как они должны быть возвращены одним и тем же курсором.

Если вы заметите какие-либо ошибки, не могли бы вы так любезно сообщить их мне?