Я создаю приложение на Swift, которое показывает пользовательские события с датами, отправленными с сервера. У этих событий есть уникальные идентификаторы. Одна из функций приложения позволяет пользователю планировать эти события, сохраняя их в календаре iOS. Проблема в том, что приложение должно показывать пользователям, какие события были запланированы в календаре iOS. Для этого я могу сравнить заголовки и даты событий в моем приложении с событиями, которые пользователь сохранил в календаре, но может быть два события с одинаковыми датами и заголовками. Поэтому мне нужно сохранить уникальный пользовательский идентификатор события внутри элемента календаря iOS. EKCalendarItem, похоже, не имеет переменной, которую я могу использовать. Если я сохраню его в заметках, пользователь сможет изменить идентификатор. Есть идеи, как решить эту проблему? Я использую фреймворк EventKit.
Нужна помощь в сохранении уникального пользовательского идентификатора внутри события в календаре iOS (Swift)
Ответы (1)
Насколько мне известно, вы не можете хранить свои собственные идентификаторы в записях календаря. Я бы рекомендовал хранить внешние идентификаторы записей вместе с идентификатором записи календаря iOS в локальной структуре данных.
Возможно, словарь с внешним идентификатором в качестве ключа и EKEvent.eventIdentifier
в качестве значения.
Кроме того, вы должны прислушиваться к изменениям в календаре, чтобы иметь возможность отреагировать в случае необходимости. (EKEventStoreChangedNotification
)
person
D. Mika
schedule
01.04.2019