Идея приложения состоит в том, чтобы добавить около 50 000 контактов в каталог CallKit, но когда я пытаюсь добавить их с помощью context.addIdentificationEntry(withNextSequentialPhoneNumber: contact.number, label: contact.contactLabel)
в методе beginRequest(with context: CXCallDirectoryExtensionContext)
, я часто получаю либо com.apple.CallKit.error.calldirectorymanagerошибка 2 или какая-то странная ошибка sqlite3:
sqlite3_step for query 'INSERT INTO PhoneNumberIdentificationEntry
(extension_id, phone_number_id, label_id) VALUES (?, (SELECT id
FROM PhoneNumber WHERE (number = ?)), (SELECT id FROM Label WHERE
(localized_label = ?))),
…
(SELECT id FROM Label WHERE (localized_label = ?)))' returned 19
(2067) errorMessage 'UNIQUE constraint failed:
PhoneNumberIdentificationEntry.extension_id,
PhoneNumberIdentificationEntry.phone_number_id,
PhoneNumberIdentificationEntry.label_id'
Обычно я выбираю контакты с сервера и пытаюсь синхронизировать их - поэтому я сохраняю их локально с помощью Realm. Есть у кого идеи как справиться с такими ошибками?