Невозможно сохранить EKEvent, так как в календаре отсутствует органайзер по умолчанию - PullRequest
1 голос
/ 17 апреля 2019

Я пытаюсь сохранить новый EKEvent в новый локальный календарь, который я создаю с помощью:

newCalendar.source = self.eventStore.sources.filter { (source: EKSource) -> Bool in source.sourceType.rawValue == EKSourceType.local.rawValue}.first!
    do {
        try self.eventStore.saveCalendar(newCalendar, commit: true)
       } catch {
        throw Error.calendarNotSaved
      }

Я возвращаю идентификатор календаря и создаю новое EKEvent и сохраняю с помощью:

newEvent.calendar = self.eventStore.calendar(withIdentifier: calendarIdentifier)!

do {
   try eventStore.save(newEvent, span:.thisEvent, commit: true)
 } catch {}

Это не с сообщением об ошибке:

Ошибка домена = EKErrorDomain Code = 54 "В календаре нет организатора по умолчанию."

Согласно Apple, вы не можете создать новый EKSource, просто используйте существующий для создания нового календаря. . В моем случае единственный локальный календарь не содержит никакой информации EKOrganizer и поэтому не может быть сохранен. Любые предложения о том, как обойти эту проблему?

Обновление : Следует также добавить, что я пытался добавить органайзер через EKEvent.organizer, но это свойство доступно только для чтения и получает информацию из EKSource, который вы используете при создании календаря.

...