Матвей Мальков «Ещё один поиск контактов на android»

Post on 14-Jun-2015

324 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Многие дайлеры не умеют делать поиск по Т9 клавиатуре. Те, что умеют, в большинстве своем делают поиск только по имени/фамилии контакта или по началу номера, а кто-то только с использованием английского алфавита. В 2GIS Dialer нам хотелось искать все контакты по имени, фамилии, телефону (любому из списка и с любого символа), а так же по должности и месту работу (опционально: e-mail и вебсайт, адрес и группы контактов). Кроме того, нам хотелось, чтобы пользователь на любом языке мог найти свои контакты. И в завершение необходимо было, чтобы весь этот поиск работал быстро. О том, как мы добились прогресса в этом деле я и расскажу.

TRANSCRIPT

Еще один поиск контактов на Android

Обо мне

— 2ГИС (Dialer)

— Noveo

Отличное приложение?

— Предсказуемость

— Скорость

— Отзывчивость

Android приложений много

Как много среди них крутых?

Мелочи — самое важное в

приложении

А у других…

Мы решили пойти дальше

— Языки

— Разные поля

— Консистентность

— Быстро

Как мы делали это раньше?

— 56 = [5МНОПмнопJKLjkl] [РСТУрстуMNOmno6]

— (data GLOB ? OR data GLOB ?) AND MIMETYPE in (?, ?, ?)

— ~250ms

Нам не понравилось

Как мы поиск ускоряли

— Препроцессинг

— Т9 Паттерны— Мама = 5252— 2GIS = 2447— あきた = 234

Внезапно : RxJava

— Событийность

— Фукнциональность

— Понятность

— Предсказуемость

Production

Итого

— Первый запуск ~1500 ms

— Обновления ~700 ms

— Первое нажатие клавиши 80-120 ms

— Последующие < 60 ms

— Языки

— Разные поля

— Консистентность

— Быстро

Матвей Мальков

m.malkov@2gis.ru

matveyka_jj

top related