看一下iCloud是如何工作的
iCloud 馬上就要和廣大果迷見面了,相信不少果迷已經對該服務期待已久。被冠以 iOS 5 最重要更新之一的 iCloud 到底是如何為用戶服務的呢?下面帶果迷們一起了解一下 iCloud 的內部構造。

iCloud 最簡單的存在形式其實就是一個特定的文件夾,它位于 iOS 設備的 /private/var/mobile/Library/Mobile Documents/ 目錄下。該目錄中保存有各應用共享至云端的所有應用數據。
應用程序對該目錄有部分讀寫權限,該權限是開發人員特有的。對于密碼鑰匙串,開發人員可以在各應用間共享云端數據。比如,X 公司開發的所有應用可以共享、查看以及更新相同的文件集。你無法共享你開發者賬戶以外的數據,所以我的應用無法看到 X 公司的文件,反之亦然。
iOS 系統監控著 Mobile Documents 文件夾。當文件被更改,設備會自動的將這些更改上傳至云端。從而這些更改就可以傳輸至同一賬號綁定的所有設備上。這些操作都由本地操作系統服務進行處理,應用程序不直接參與其中。
相反,應用程序通過訂閱不同種類的通知來讓應用知道***發生的更改。然后,它們可以通過對比本地和 iCloud 端的數據差異從而來處理數據版本沖突。
至于開發者如何做就是他們的事了。他們可以選擇“最近更改有效”策略。或者他們可以結合一些其他方式的更改。應用程序的職責就在于確保不同硬件設備單元上的數據保持一致,同時也需要可用的網絡連接來處理這種一致性。
當用戶失去網絡連接的時候,麻煩事就來了。比如,你也許在沒有網絡連接的航班上編輯待辦事項,與此同時你的伴侶在他或她所在的城市正在更新同一份待辦事項。開發者們為此工作了數月,研究如何在同時接受雙方修改的前提下結合這些更改并更新目標文件的策略。
***,iCloud API 接口方式或許會很少。它實際上就只是一個異地同步的存儲文件夾。對于開發者來說,訣竅在于如何考慮時間、空間、連接不同方面對文件夾的影響,因為該文件夾必須適應于用戶的更新。