EKEventstore 和唯一的日历标识符

Posted

技术标签:

【中文标题】EKEventstore 和唯一的日历标识符【英文标题】:EKEventstore and unique calendar identifier 【发布时间】:2011-11-14 07:15:32 【问题描述】:

我对 EKCalendar 的 calendarIdentifier 属性有疑问。此 ID 在全局级别或每个源级别上是唯一的吗?例如。我可以安全地将 calendarIdentifier 存储在我的应用程序中,以便在事件存储中的 所有 日历中顺利识别日历(无论它们在什么 EKSource 中)还是我还需要保存与关联的 EKSource 标识符日历?

我的应用中有日历选择功能,我想在应用重启时安全地存储和加载正确的日历(在正确的帐户中)。

提前致谢。

【问题讨论】:

【参考方案1】:

根据我的个人经验和EKCalendar's class reference 中的属性描述,它是EKEventStore 的本地属性。 EKCalendar 有一个 EKSource,因为它的属性与 calendarIdentifier 字符串处于同一级别。

【讨论】:

我发现 calendarIdentifier 对设备来说是唯一的,但不是在设备之间。我需要通过 iCloud 在所有设备上使用的东西,但这没有用。对于某些来源(Exchange 和 iCloud)似乎是一样的,但对于 Gmail 则不然。因此,我无法通过存储的名称和来源进行匹配,并在找不到匹配项时询问用户。 这很有趣,我会假设它是 iCloud 帐户独有的。您可能要检查的另一件事是日历颜色,因为我认为这是在设备之间同步的。不太理想,但可能会减少误报。 任何人都可以帮忙:***.com/questions/33931231/…

以上是关于EKEventstore 和唯一的日历标识符的主要内容,如果未能解决你的问题,请参考以下文章

使用日历中的标识符检索事件时应用程序崩溃

通过同步帐户使用不同计算机时 Outlook 中的唯一约会标识符

如何在 EventKit 中使用 CalendarIdentifier 获取提醒?

Android Calendar Provider:是不是有可跨多个设备使用的事件唯一标识符?

无法在 macOS 的 Swift 应用程序中请求日历事件访问(通过 EKEventStore)

使用不同的日历标识符格式化 NSDate?