Сохраненный календарь (через приложение) исчезает при перезапуске устройства iOS (iPhone)

Создание календаря подписанного типа и добавление событий в календарь, как показано ниже

let eventStore = EKEventStore()
func createCalendar() {
    let newCalendar = EKCalendar(for: .event, eventStore: eventStore)
    newCalendar.title = "MyCal"
    let sourcesInEventStore = eventStore.sources
    var source = sourcesInEventStore.filter{
         (source: EKSource) -> Bool in  
               source.sourceType.rawValue == EKSourceType.subscribed.rawValue
          }.first

    if let eventSource = source {
            newCalendar.source = eventSource
            do {
                try eventStore.saveCalendar(newCalendar, commit: true)
                UserDefaults.standard.set(newCalendar.calendarIdentifier, forKey: self.calendarKey)
                UserDefaults.standard.synchronize()
            } catch {
                print((error as NSError).localizedDescription)
            }
        }

}

func saveEvents(events: [EKEvent]) {
    let calendar = createCalendar()
    if calendar.source != nil {
        for event in events {
            do {
                event.calendar = calendar
                try eventStore.save(event, span: .thisEvent)
            } catch let error as NSError {
                print("\(error.localizedDescription)")
            }
        }
    }
}

Календарь и события создаются просто отлично, проблема в том, когда устройство перезагружается и переходит в приложение календаря и видит список календарей, которые он покажет один раз и исчезнет навсегда.

Примечание. Также реализован запрос доступа к календарному потоку.

Возможность воспроизведения проблем на устройствах iPhone 5S, 6, 8 под управлением iOS 11.x

заранее спасибо

0 ответов

Другие вопросы по тегам