Если вы пройдете учебник на developer.android.com, я думаю, вы найдете то, что ищете:
http://developer.android.com/guide/topics/search/adding-recent-query-suggestions.html
Хитрость заключается в реализации ContentProvider, которыйрасширяет SearchRecentSuggestionsProvider.Это простой класс:
public class MySuggestionProvider extends SearchRecentSuggestionsProvider {
public final static String AUTHORITY = "com.example.MySuggestionProvider";
public final static int MODE = DATABASE_MODE_QUERIES;
public MySuggestionProvider() {
setupSuggestions(AUTHORITY, MODE);
}
}
Не забудьте добавить своего провайдера в манифест и обновить свой файл searchable.xml, чтобы он знал о вашем провайдере:
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:label="@string/app_label"
android:hint="@string/search_hint"
android:searchSuggestAuthority="com.example.MySuggestionProvider"
android:searchSuggestSelection=" ?" >
</searchable>
Также вы будетенеобходимо сохранить результаты поиска в вашей поисковой деятельности:
if (Intent.ACTION_SEARCH.equals(Intent .getAction())) {
String query = Intent .getStringExtra(SearchManager.QUERY);
SearchRecentSuggestions suggestions = new SearchRecentSuggestions(this,
MySuggestionProvider.AUTHORITY, MySuggestionProvider.MODE);
suggestions.saveRecentQuery(query, null);
}