[英]How do I properly enable iCloud document sync for iOS app?
在我的cordova iOS應用程序中,用戶可以將其數據備份到文件中,該文件保存在應用程序容器內的Documents文件夾中,然后應同步到iCloud。 但是,盡管文件已保存,但從未同步到iCloud,因此很明顯我必須丟失一些內容。 這些是我已采取的步驟:
NSUbiquitousContainers
詞典已添加到Info.plist: BackupWebStorage
設置這樣的雲備份應該啟用(不知道這究竟是否會影響文件同步)。 cordova.file.documentsDirectory
指示的位置): 在這一點上,我本來希望看到xBrowserSync出現在“存儲和iCloud使用情況”設置中,但我沒有:
而且在iCloud Drive應用程序中也看不到xBrowserSync文件夾:
當然,我從沒看到文件同步到Mac或icloud.com。
顯然我缺少了一些東西,但看不到。 我已經閱讀了許多有關如何使它工作的SO帖子,並且我發現Apple的文檔不清楚且令人困惑,因此我有點被困在這一點上。 有人能指出我正確的方向嗎?
經過進一步的閱讀,我相信我知道這里缺少什么。 我還沒有意識到您需要明確地告訴iOS將文件上傳到iCloud文檔存儲 ,這將允許文件出現在用戶設備上的iCloud Drive中。
因此,我需要編寫一些使用FileManager
類的(iOS)代碼以:
url(forUbiquityContainerIdentifier:)
方法以獲取本地iCloud容器的位置並對其進行初始化(這時該應用程序將出現在“存儲和iCloud使用情況”設置中) setUbiquitous(_:itemAt:destinationURL:)
告訴iOS將文件上傳到iCloud。 我正在構建一個非常基本的Cordova插件來執行此操作。 完成后,我將通過鏈接更新此答案。
編輯:
我開發的cordova插件稱為cordova-plugin-icloud-document-storage 。 它當前僅實現將文檔上傳到iCloud(即setUbiquitous
),而沒有實現FileManager
類的其他iCloud功能(例如管理雲更新或版本沖突)。 如果有人想開發此功能,請提交拉取請求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.