覺得有必要先提供幾個網(wǎng)址,可以仔細(xì)了解iCloud的相關(guān)介紹。
===》介紹性文章:
iCloud設(shè)計指南
CloudKit相關(guān)介紹===》API指導(dǎo):
一遍先行者的總結(jié)
類似的總結(jié),還看過這些:
Key-Value
Documents
Cloudkit
官方的介紹:
Key-Value
Documents與NSFileManager
CloudKit===》擴(kuò)展閱讀,或許可以提供一些不同想法:
iCloud Drive
CloudKit與其它平臺的一點小對比
事實上沒看明白這里解決的問題,但還是記錄在這里
接觸到iCloud的原因是最近項目需要實現(xiàn)應(yīng)用之間的文件共享,但是看過相關(guān)介紹之后,發(fā)現(xiàn)好像通過iCloud并不能解決各應(yīng)用之間文件共享的問題。但既然看了,所以想要做一個記錄,或許以后某個項目會用到。
問題1:iCould有什么用?
實現(xiàn)各設(shè)備之間,數(shù)據(jù)的同步。用戶在iPhone上面的數(shù)據(jù),在mac上相同應(yīng)用也可以得到。
問題2:可以在不同應(yīng)用之間實現(xiàn)數(shù)據(jù)的交互么?
就目前看到資料,可以。
但是有局限性,實現(xiàn)的最基礎(chǔ)前提是,應(yīng)用都是同一個開發(fā)者賬戶。并且要訪問的iCloud空間是同一片空間。
所以,例如你想要訪問微信的iCloud空間,不可能
解決方案,查看鏈接,找到為多個應(yīng)用程序配置通用iCloud容器相關(guān)內(nèi)容
問題3:同一應(yīng)用,不同用戶之間可以進(jìn)行數(shù)據(jù)共享么?
可以實現(xiàn)。
在iCloud中,分為私有庫、共享庫和公有庫。
私有庫是和用戶的iCloud賬戶掛鉤的,也就是說,私有庫的數(shù)據(jù),只有同一iCloud賬戶可以在不同設(shè)備之間進(jìn)行訪問。其它的iCloud賬戶不可訪問。
共享庫和公有庫,不同iCloud賬戶都可以進(jìn)行訪問,從而實現(xiàn)不同用戶之間的數(shù)據(jù)共享。
問題4:如果用戶將自己的iCloud里面的數(shù)據(jù)刪除,應(yīng)用存進(jìn)去的數(shù)據(jù)會刪除么?
這個問題,沒有驗證出來??赡苡捎诰彺鎲栴},一直都沒有確定是否會清除。
在官方介紹 用戶的iCloud存儲空間有限 一段。
猜測API存入的iCloud與用戶設(shè)備上的iCloud連接的應(yīng)該是同一片空間。
這個問題的驗證,我是通過key-value 這種存入iCloud的方式驗證的。個人猜想也與這種方式有一定的關(guān)系,詳細(xì)看Key-Value 中相關(guān)的猜想
問題5:寫入數(shù)據(jù),有哪幾種方式?
1.Key-Value :適用于離散值,例如首選項,設(shè)置和簡單的應(yīng)用程序狀態(tài)
2.Documents:文檔存儲,用于基于用戶可見文件的內(nèi)容,Core Data存儲或其他基于文件的復(fù)雜內(nèi)容
3.CloudKit:用于將數(shù)據(jù)作為單個記錄存儲在私人或公共數(shù)據(jù)庫中,可供所有應(yīng)用程序用戶訪問。
具體介紹,這篇文章最后有相關(guān)比較 -->地址
關(guān)于三種方式,也做了一些簡單的實踐:
學(xué)習(xí)筆記:Key-Value
學(xué)習(xí)筆記:Documents
學(xué)習(xí)筆記:CloudKit
最后,看一個東西,可以實現(xiàn)各應(yīng)用之間文件的共享,微信文件發(fā)送用到的技術(shù) ---> Files