很屌的项目运用不常用,倒是可以装逼iOS Developer

iClould

2016-04-01  本文已影响94人  忧郁的小码仔

在iOS中,我们使用ClouldKit框架来操作Apple提供的iClould服务,将我们的数据保存到云上。(官方文档)


1>.首先,ClouldKit使用container来管理和处理数据,container是iClould分配给每个app的space。当你在Xcode中开启iClould的时候就会默认生成一个container,当然,你也可以自己定义一个。每个container里面包含两个数据库(privateDatabase & publicDatabase)。privateDatabase里的数据只能被用户自己访问,相反,publicDatabase里的数据可以被所有同一个app的用户访问到。

下面是ClouldKit和我们平时用的database的概念对应关系

record Type -------- table

records       ---------table rows


2.> ClouldKit支持一下类型的存储

NSData (single bytes)

NSDate (date and time)

NSNumber (both Int and Double)

NSString (or String in Swift)

NSArray (list)

CKReference (used to create relationships between objects)

CLLocation (location)

CKAsset (file)

(CK开头的类型是ClouldKit框架里面的)


3.前提和说明:

如果用户没有登录他的iClould账号,那么他只能从publicDatabase获取数据,仅此二期,其他的操作都不好使。

container一旦创建,就永远不可删除,只有record types可已删除

你可以在CloudKit Dashboard中查看操作app的container中的记录



4.下面正式开始:

第一:下面的Team里面必须设置真实存在的apple ID. 不能设置为none.

第二:开启iClould服务,勾选Key-value storage和ClouldKit,当下面出现四个打钩的Steps的时候,标示一切okay了。(如果这一步失败的话,就重复尝试一下,再不行,就可能是Boundle identifier的问题了)

这时候工程里面会自动添加ClouldKit.framework和一个.entitlements的文件,如下:

好了,下面就是纯coding了,完整的demo可以在这里下载到


可能会出现的问题:

解决方法: 进入CloudKit Dashboard

在下图中的弹出框中勾选第一项:Record ID即可,别忘了点击右下角的Save按钮.

上一篇下一篇

猜你喜欢

热点阅读