Вышла iOS 9 во всей красе, пора бы и заняться внедрением новых фишечек системы!
В этой статье я опишу принцип интеграции со Spotlight в iOS 9.
Интеграция осуществляется в два этапа:
- Индексирование элементов
- Отслеживание активности пользователя
Давайте остановимся поподробнее на каждом из немногочисленных шагов.
Индексирование элементов
С помощью фреймворка CoreSpotlight можно запустить запуск индексирования элементов. Сами элементы представляют собою сущности, содержащие Наименование, Изображение, Описание, ключевые слова и т.д. Выше на скриншоте отображен найденный в Spotlight элемент “Darkness Production”. Индексирование проходит в фоновом режиме и может занимать некоторое время, в зависимости от количества элементов для индексации.
Отслеживание активности пользователя
Для того, чтобы приложение как-то реагировало на открытие найденного элемента в Spotlight, необходимо правильно отслеживать активность. Для этого нужно использовать метод
application:continueUserActivity: у делегата UIApplicationDelegate.
Для того, чтобы как-то систематизировать весь вышеописанный процесс, я разработал класс DPSpotlight, который сам индексирует нужные элементы и отслеживает активность в удобном виде.
Класс с примером использования доступен на GitHub.