Наш клиент Android API является устаревшим и находится только в режиме обслуживания. Мы рекомендуем использовать наш API-клиент Kotlin, который лучше подходит для разработки под Android.
Algolia Search — это размещенная поисковая система, способная выдавать результаты в реальном времени с первого нажатия клавиши.
Клиент API поиска Algolia для Android позволяет легко использовать API REST поиска Algolia из вашего кода Android.
Примечание. Если вы использовали версию 2.x нашего клиента Android, прочтите руководство по переходу на версию 3.x.
Вы можете просмотреть автоматически созданную справочную документацию.
Этот проект имеет открытый исходный код под лицензией MIT.
Ваш вклад приветствуется! Используйте нашу конфигурацию форматирования, чтобы сохранить единообразие стиля кодирования.
Вы можете найти полную ссылку на веб-сайте Algolia.
Содействие
Установить
Быстрый старт
Отправка данных
Настроить
Поиск
Список доступных методов
Получение помощи
Список доступных методов
Установите клиент Android, добавив следующую зависимость в файл сборки Gradle
:
dependencies {
// [...]
implementation ' com.algolia:algoliasearch-android:3.+ '
// This will automatically update to the latest v3 release when you build your project
}
Это краткое руководство за 30 секунд покажет вам, как индексировать и искать объекты.
Для начала вам необходимо инициализировать клиент. Для этого вам понадобится идентификатор приложения и ключ API . Вы можете найти оба в своей учетной записи Algolia.
Client client = new Client ( "YourApplicationID" , "YourAPIKey" );
Index index = client . getIndex ( "your_index_name" );
Предупреждение. Если вы создаете собственное приложение для мобильных устройств, не включайте ключ API поиска непосредственно в исходный код . Вместо этого вам следует рассмотреть возможность получения ключа с ваших серверов во время запуска приложения.
Без какой-либо предварительной настройки вы можете начать индексацию контактов в индексе contacts
используя следующий код:
Index index = client . initIndex ( "contacts" );
index . addObjectAsync ( new JSONObject ()
. put ( "firstname" , "Jimmie" )
. put ( "lastname" , "Barninger" )
. put ( "followers" , 93 )
. put ( "company" , "California Paint" ), null );
index . addObjectAsync ( new JSONObject ()
. put ( "firstname" , "Warren" )
. put ( "lastname" , "Speach" )
. put ( "followers" , 42 )
. put ( "company" , "Norwalk Crmc" ), null );
Вы можете настроить параметры для точной настройки поведения поиска. Например, вы можете добавить собственный рейтинг по количеству подписчиков, чтобы еще больше повысить встроенную релевантность:
JSONObject settings = new JSONObject (). append ( "customRanking" , "desc(followers)" );
index . setSettingsAsync ( settings , null );
Вы также можете настроить список атрибутов, которые вы хотите индексировать, в порядке важности (самые важные в первую очередь).
Примечание. Algolia предлагает результаты по мере ввода, что означает, что обычно вы будете искать по префиксу. В этом случае порядок атрибутов имеет решающее значение для принятия решения о том, какое попадание является лучшим.
JSONObject settings = new JSONObject ()
. put ( "searchableAttributes" , "lastname" )
. put ( "searchableAttributes" , "firstname" )
. put ( "searchableAttributes" , "company" );
index . setSettingsAsync ( settings , null );
Теперь можно искать контакты по firstname
, lastname
, company
и т.д. (даже с опечатками):
CompletionHandler completionHandler = new CompletionHandler () {
@ Override
public void requestCompleted ( JSONObject content , AlgoliaException error ) {
// [...]
}
};
// Search for a first name
index . searchAsync ( new Query ( "jimmie" ), completionHandler );
// Search for a first name with typo
index . searchAsync ( new Query ( "jimie" ), completionHandler );
// Search for a company
index . searchAsync ( new Query ( "california paint" ), completionHandler );
// Search for a first name and a company
index . searchAsync ( new Query ( "jimmie paint" ), completionHandler );