Получить изображения контактов из адресной книги
Я хочу показать миниатюры контактов в своем приложении на основе адреса электронной почты, аналогично тому, что делают некоторые почтовые приложения для разговоров по электронной почте. Изображения будут показаны в виде таблицы.
Я пробовал искать в адресной книге и получать миниатюры для каждого контакта, но он слишком медленный для использования. Я также уже пытался лениво загрузить изображение, вызванное cellForRowAtIndexPath, и выполнить поиск в фоновом потоке, чтобы не блокировать основной поток. Тестирование только с 7000 контактов, это может занять около 30 секунд на контакт.
Вот краткая суть общего кода - https://gist.github.com/eytanbiala/7456bfcd0c55be056720 Очевидно, что это можно оптимизировать, чтобы загрузить все контакты только один раз, но ради вопроса это не имеет значения.
Некоторые пользователи могут иметь до 100 000 контактов на своем устройстве, так что это слишком медленно.
Одно из предложений - синхронизировать контакты из адресной книги iOS с приложением и сохранить их в Core Data. Конечно, это добавляет ненужную сложность приложению.
Как лучше всего подойти к этой задаче?