配置iCloud,首先你就先要有一個真實的蘋果開發(fā)者賬號,沒錯,就是一年688的那個。開通了之后,在Xcode中新建一個項目。然后在 TARGETS - Capabilities - iCloud 中打開開關(guān)就可以了。
創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、環(huán)翠網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、html5、商城開發(fā)、集團公司官網(wǎng)建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為環(huán)翠等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
就像這樣,是不是很簡單啊。
誒,可是好像有什么地方不對,有些地方爆紅了。
這是因為我們還沒有給這個App ID 注冊,所以接下來我們?nèi)ヌO果的 開發(fā)者官網(wǎng) 添加一個App ID,在添加的時候勾選 iCloud 服務(wù)就可以啦。
什么?你說你已經(jīng)創(chuàng)建過App ID了???沒關(guān)系,在管理App ID這邊選擇 Edit ,然后在勾選 iCloud 也是一樣的。
這時候回到Xcode中在看一下,應(yīng)該就已經(jīng)沒有爆紅了吧。
什么???還有爆紅??? 那你重啟一下XCode試試吧。再不行,你重啟一下電腦試試好了。
在Xcode中 iCloud 下邊一共有三個可以勾選的服務(wù),其中第一個就是 key-value storage ,這個也是最簡單的 iCloud 使用方法了,他跟 NSUserDefaults 的使用方法基本一樣,都是以鍵值對的方式存儲數(shù)據(jù)。只不過處理iCloud的類為 NSUbiquitousKeyValueStore 。
存儲數(shù)據(jù)的方式很簡單,只要使用 setObject:forkey: 之后,使用 synchronize 同步一下就可以了。
獲取數(shù)據(jù)的方式也一樣,是要使用 objectForKey 就可以了。
看一下 NSUbiquitousKeyValueStore 的頭文件,我們發(fā)現(xiàn)他還有一個通知消息
注冊這個通知,就可以在數(shù)據(jù)修改的時候接收到通知,然后做對應(yīng)的處理。最好的驗證方法就是在存儲了數(shù)據(jù)之后直接刪除掉這個app,然后再次安裝,這個時候就會觸發(fā)該通知。
先放一下demo的[ 地址 。
以上就是關(guān)于配置iCloud和key-value存儲的簡單使用,后邊我們再看看其他兩種服務(wù)是怎么樣使用的。
相較于key-value的存儲類型,Documents是用來管理一些比較大的文件,比如用戶創(chuàng)建的文檔等等。
在我們打開iCloud選項的時候,系統(tǒng)就是自動為我們添加一個 xxx.entitlements 的文件,這個東西用來保證應(yīng)用的安全性,確保只有你的應(yīng)用才能訪問你自己創(chuàng)建的文檔,系統(tǒng)也是依賴于他來區(qū)分用戶的iCloud賬戶中每個應(yīng)用的文檔。
查看這個 xxx.entitlements 我們會發(fā)現(xiàn)在他里邊有這樣的一個key Ubiquity Container Identifiers ,對應(yīng)的value為 iCloud.$(CFBundleIdentifier) 。其實這個 $(CFBundleIdentifier) 就代表這你的APP ID。所以也可以看成是 iCloud.com.zzr.ZZRiCloudDemo 。
NSFileManager 主要是對文件的操作,我們用它來獲取iCloud的存儲地址。
根據(jù)我們的entitlements,通過 NSFileManager 就可以獲得iCloud的存儲地址,在獲取地址之后,我們要先判斷一下獲取的地址是否為空,如果這個地址為空,則說明用戶的iCloud暫時不可用,接下來一切的操作都沒辦法進行下去。
UIDocument 主要是用于對文件內(nèi)容的操作。
其實獲取了文件的地址之后,我們已經(jīng)可以直接對文件進行操作了,但是官方還是讓我們通過 UIDocument 來操作,因為當我們在對iCloud進行操作的時候,不止是只有我們自己對他進行操作, iCloud daemon 也會對iCloud操作,用 UIDocument 操作能夠保證存取安全。
在使用 UIDocument 之前,我們新建一個類,繼承于 UIDocument ,并且重寫兩個方法:
NSMetadataQuery 主要用來查詢數(shù)據(jù)。
有了之前的準備工作,創(chuàng)建一個文檔就非常簡單了,只要創(chuàng)建好我們要保存的文件,通過
就可以將文檔上傳到iCloud中了。
我們以一個txt文件作為示范。
修改文檔,其實就是重寫文檔,就是將上邊創(chuàng)建文檔中的 UIDocumentSaveForCreating 改為 UIDocumentSaveForOverwriting 。
刪除文檔其實就是通過之前的地址獲取到文件,然后調(diào)用remove方法即可。
之前講了增加、刪除、修改,好像增刪改查中只剩下查詢這個方法沒有介紹了。查詢和前邊幾個有點不同,他需要用到 NSMetadataQuery 。
直接調(diào)用 startQuery 開始查詢,iCloud就已經(jīng)開始幫我們查詢了,查詢好之后,iCloud會通過通知來告訴我們查詢到了東西。
所以我們注冊兩個通知
并相應(yīng)他們
其中
就是查詢到的內(nèi)容的數(shù)組,遍歷他,就可以獲取到對應(yīng)目錄下的全部文件了。
先放一下demo的 地址 。
demo簡單的制作了一個text文檔的存儲功能,一些交互沒有完善,但是基本的增刪改查功能都已經(jīng)實現(xiàn)了。
以上就是 iCloud Document 的簡單使用。此文章僅供個人學(xué)習(xí)使用,如有不當,希望大佬指出。
蘋果似乎已經(jīng)修復(fù)了一個iCloud的服務(wù)器問題,該問題導(dǎo)致一些已經(jīng)實現(xiàn)了 iCloud 支持的應(yīng)用無法正確同步。
該漏洞自去年11月以來一直存在,應(yīng)用開發(fā)者對蘋果缺乏解決該問題的努力越來越感到不安。不過據(jù)YarnBuddy開發(fā)者Becky Hansmeyer稱,蘋果公司已經(jīng)設(shè)法解決了導(dǎo)致同步失敗的問題。
有 iCloud 問題的應(yīng)用用戶看到了503錯誤消息,如“請求失敗,http狀態(tài)代碼為503”,但多位開發(fā)者已經(jīng)確認,這些錯誤消息似乎在過去幾天里已經(jīng)消失。
iCloud 同步漏洞似乎是在11月底或12月初的某個時候引入的,這讓開發(fā)人員非常頭疼。遇到 iCloud 同步問題的應(yīng)用用戶不知道這是蘋果的問題,導(dǎo)致開發(fā)人員受到指責(zé)。
雖然大多數(shù)開發(fā)人員表示同步問題已經(jīng)基本解決,但仍有一些人抱怨正在進行的問題,所以蘋果可能還有一些問題需要解決。
iCloud是蘋果公司所提供的云端服務(wù),讓使用者可以免費儲存5GB的資料。iCloud平臺可以將您的個人信息存儲到蘋果的服務(wù)器,通過連接無線網(wǎng)絡(luò),這些信息會自動推送到您手中的每個設(shè)備上,這些設(shè)備包括iPhone、iPod Touch、iPad,甚至是Mac電腦。
蘋果手機
icloud屬于
云端備份
空間,備份數(shù)據(jù)的話,只需要在蘋果手機端開啟icloud功能,在網(wǎng)絡(luò)正常連接狀態(tài)下即可自動備份手機里面的數(shù)據(jù)。
具體如下:
1
打開蘋果手機
-
設(shè)置
-
icloud
2
進入icloud設(shè)置界面后開啟icloud
云備份
功能。
關(guān)于
備份文件
存儲位置的問題,開啟icloud云備份功能之后,只要手機正常
連接網(wǎng)絡(luò)
,都可以自動地將手機內(nèi)的
數(shù)據(jù)備份
到
云空間
上。