[英]EventKit synchronization questions
在我的應用中,我正在使用EventKit
API來訪問設備上的日歷,並將其顯示在視圖中。 但是,在使用網絡日歷時,我懷疑EKEventStore
在查詢時只會返回某種緩存/本地事件列表,而不是重新加載日歷並返回實際/最新內容。
相反,當啟動本機日歷應用程序時,該應用程序將刷新/重新加載所有日歷,從而同步所有網絡共享日歷。 現在,回到我的應用程序還將顯示新同步的事件。
除此之外,我發現通過我的應用程序和EventKit / EventKitUI
修改任何事件(刪除/更新)都不會同步回Mac日歷。
簡而言之:在EventKit
/ iOS SDK中,是否有任何方法可以強制與網絡共享日歷同步?
您可以使用EKEventStore
實例的-(void)refreshSourcesIfNecessary方法執行EKEventStore
操作:
...如果本地數據已過期,請從遠程源中提取新數據。
這將通過獲取最新的遠程數據來強制更新本地日歷存儲。 我感覺這是本機iOS日歷應用程序用來提示更新的方法。
至於刪除和更新的日歷事件無法同步到Mac的問題,您確定修改后確定在EKEventStore
實例上調用-(void)commit:嗎?
另外, EKEventStore
有多種方法可以保存和刪除日歷和事件,這些日歷和事件還提供可以立即提交更改的commit參數。 我會發布鏈接,但作為新用戶,我只能使用兩個超鏈接。
- (void)saveEvent:span:commit:error:
- (void)removeEvent:span:commit:error:
假設這些事件已添加到基於雲的日歷中,則應該具有將更改同步到Mac的效果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.