2011-11-14 45 views
6

我對EKCalendar的calendarIdentifier屬性有疑問。此ID在全球級別上還是在每個源級別上都是唯一的?例如。我是否可以將calendarIdentifier安全地存儲在我的應用中,以便在事件存儲中平穩識別日曆中的所有日曆(無論它們在哪個EKSource中),還是我還需要保存與日曆關聯的EKSource標識符?EKEventstore和唯一的日曆標識

我的應用程序中有日曆選擇功能,我希望在應用程序重新啓動時安全地存儲並加載正確的日曆(在正確的帳戶中)。

在此先感謝。

回答

1

根據我個人的經驗和來自EKCalendar's class reference中物業的描述,它是本地的EKEventStore。 EKCalendar具有EKSource,因爲它的屬性與calendarIdentifier字符串的屬性相同。

+2

我發現calendarIdentifier是設備唯一的,但不是設備之間。我需要通過iCloud在所有設備上使用該功能,但這種方式無效。對於某些來源(Exchange和iCloud),似乎也是如此,但對於Gmail而言並非如此。所以,我堅持通過存儲的名稱和來源進行匹配,並在用戶找不到匹配時詢問用戶。 – Symmetric

+0

這很有趣,我會假定它是iCloud帳戶唯一的。您可能想要檢查的另一件事是日曆顏色,因爲我認爲這是在設備之間同步。幾乎不理想,但可能會減少漏報。 – craigmarch

+0

任何人都可以在這幫助:http://stackoverflow.com/questions/33931231/how-to-identify-ekevent-uniquely-with-sync-across-the-devices – Mrug