Обнаружение контактов в адресной книге, которые используют приложение - Swift
В настоящее время я создаю приложение в Swift, и у меня возникли проблемы с реализацией функции.
Когда пользователь регистрируется, он вводит свой номер телефона, который затем сохраняется в базе данных. Сразу после процесса регистрации я хочу отобразить список всех контактов пользователя, которые уже используют приложение, чтобы он мог добавлять их, а также других, чтобы он мог пригласить их через SMS.
На моем API у меня есть конечная точка, которая может возвращать всех пользователей, которые совпадают в списке телефонных номеров. Прямо сейчас я пытаюсь сделать это:
- получить все номера телефонов в адресной книге
- отправьте их в API, чтобы узнать, совпадают ли некоторые из этих номеров с зарегистрированными пользователями
- если есть совпадение, верните список пользователей в приложение
- обновить представление моей таблицы данными, добавив правильную кнопку (добавить или пригласить) в каждой ячейке
Моя проблема в том, что я не знаю, как мне связать возвращенные данные из API с моим списком контактов, зная, что у каждого контакта может быть несколько телефонных номеров. Должен ли я просмотреть свой список контактов и для каждого контакта выяснить, содержится ли один из телефонных номеров в массиве пользователей, возвращаемых API?
Я нахожу процесс довольно тяжелым. Мне нужно пройти через адресную книгу один раз, чтобы получить номера телефонов и отобразить имена контактов в табличном представлении, а затем еще раз, чтобы связать данные, предоставленные API, с правильными ячейками.
Есть ли лучший способ справиться с этим? Я хотел бы услышать ваши мысли!