[iCloud]iCloud学习笔记--APP内启用iCloud及CloudKit Dashboard介绍
2016-05-25 14:01
525 查看
CloudKit是苹果最新推出的基于iCloud的一个云端数据存储服务.其主要由下面两部分组成:
1. 一个仪表web页面,用于管理公开数据的记录类型.
2. 一组API接口,用于iCloud和设备之间的数据传递.
由于笔者也是初步接触iCloud云存储数据,花了一些时间学习了一下,网上能参考的资料不多,很多地方有理解不透彻,或者不对的,还请包涵!如果你有更好的参考文档或者博客介绍,还请留言告知,不胜感激!!!
这篇文章主要介绍第一个知识点,在Xcode中开启iCloud云服务,和仪表web页面的一些介绍及操作...
一. Xcode启用iCloud
首先,新建项目后,要确保你的Apple ID是一个有效的开发者账号;并在General -->Identity 下的Team选项,选择你的开发者账号,必须是有效的开发者账号才能启用iCloud服务,并确保你的Bundle
Identifier是唯一的;
然后,设置权限和容器,选择Capabilities-->启用iCloud,如下图所示:
如果之前没有选择开发者账号的话,这时,可能需要你登陆开发者账号;
最后,勾选CloudKit,这时Containers下的选项就可点了,选择Use
default container:
如果有错误提示,一般点击Fix
issue 之后,Xcode会帮我们修复;
二.
关于 CloudKit Dashboard
1.
点击上图中的 CloudKit Dashboard,或者这里,可以进入网页的仪表盘的主界面:
2.
下面,介绍一下这个界面:
SCHEMA :
CloudKit容器的高级类:Record
Types, Security Roles, 和Subscription Types,其中主要使用的是Record Types;
一个Record
Type用来定义一个单独的记录(可以理解为一个数据模型),相当于存储数据的模板,和数据库的表结构类似;
PUBLIC
DATA 和 PRIVATE DATA 就是你保存数据的地方,开发者可以查看所有的共享数据,但是只能看到自己的私密数据,无法看到用户的私密数据;这里没有显示PRIBATE DATA,其结果和PUBLIC DATA是一样的;
User
Records: 记录一些当前使用者的信息;
Default
Zone :这里可以查看数据的详细信息,也是后面主要使用的;
ADMIN:
Team
:主要是管理开发者团队权限的,这里不做过多介绍;
API
Access : 主要是用来添加一些授权信息,例如:创建 API Token .添加 Server-to-Server Key等;
Deployment
:配置开发环境,就是设置当前是开发环境,还是生产环境;如果当前是开发环境,可以重置开发环境的数据及设置,也可以切换到生产环境;
3. 手动添加Record Type :
这个数据模型可以在这里手动设置,也可使用程序保存到iCloud时自动生成,程序中设置了哪些属性,这里就会显示哪些;
下面介绍一下手动设置:
切回Record Type选项,点击右边栏的左上角的+,新增一个模型:
输入模型名称: 默认只有一个StringField的属性(这里暂且这么称呼吧),可以点击下面的Add Field... 新增属性列表;
同样可以选择属性的类型,如下图:
设置完成后,点击右下角的 Save按钮即可保存!这样,一个模型就建立好了...
4. 添加一条数据:
切换回PUBLIC DATA 选项下的 Default Zone ,可能是这样的:
点击 Add Record ID Query Index ,会显示如下界面:
这是一个空的存储器,还没有保存任何数据;
点击右边栏左上角的+ ,或者右边栏中间的New Record ,即可新建一条数据;
这时会发现,其数据结构和刚刚创建的模型一致,填写相应的数据即可:
然后,点击右下角的保存,即可生成一条记录:
当然,生成之后的记录,也是可以修改的...
数据模型(即Record Type)可能会不止一种,本示例中我设置了两种,一个名称为test,一个名称为Note,切换回Record
Type可查看另一个模型:
那么,怎么知道Default Zone里选择的是哪个模型呢?
回到Default Zone,中间蓝色区域的右上角的名称旁有个倒三角,这里可以选择使用(查询)哪个模型下的数据:
这里只有两个模型...
细心的会发现,在Record Type中的Note模型下有一行小字:1 Public Record ,1 Private Record,意思是:使用模型Note的有一条公共数据,一条隐私数据,由于我登陆的iCloud账号和开发者账号不一样,相当于是用户账号,所以这里是看不到那个隐私数据的.
5. Creating an API Token
选择左侧ADMIN分组下的API Access;
中间一列顶部的下拉列表选择API Tokens (还有一个是Server-to-Server Keys);
点击右边列左上角的+,或者Add API Token;
为你的Token起一个名字:
Sign In Callback :(可选的)指定一个回调方式:发送信息或者回调一个自定义网址;
Allowed Origins :(可选的)设置允许的域名
Discoverability :(可选)是否可见
Notes :(可选) 描述
以上信息填写完成后,点击右下角Save即可;这些信息创建完成后,也是可以修改的...
6. Creating Server-to-Server Key
首先,需要生成一个Server-toServer Certificate:
打开终端
执行指令之前最好先cd到一个你方便找到的目录(例如:桌面上的一个文件夹)
输入以下指令:
这样就生成一个名为eckey.pem的证书,打开文件夹可以查看;
接着输入以下指令,获取Public Key:
这时终端内会出现如下信息:
这个就是Public Key,复制出来,待用;
最后,回到CloudKit Dashboard:
选择API Access-->Server-to-Server Keys;
点击+,或者 Add Server-to-Server Key,新建一个key:
Public Key:这里输入刚刚复制的public Key;
Notes : 描述
点击右下角的Save,即可完成...
这些操作都比较简单,在我们后面使用代码保存数据到iCloud时可以在这里查看保存的信息详情,当前只能查看公共的;
相关API使用,稍后推出...
1. 一个仪表web页面,用于管理公开数据的记录类型.
2. 一组API接口,用于iCloud和设备之间的数据传递.
由于笔者也是初步接触iCloud云存储数据,花了一些时间学习了一下,网上能参考的资料不多,很多地方有理解不透彻,或者不对的,还请包涵!如果你有更好的参考文档或者博客介绍,还请留言告知,不胜感激!!!
这篇文章主要介绍第一个知识点,在Xcode中开启iCloud云服务,和仪表web页面的一些介绍及操作...
一. Xcode启用iCloud
首先,新建项目后,要确保你的Apple ID是一个有效的开发者账号;并在General -->Identity 下的Team选项,选择你的开发者账号,必须是有效的开发者账号才能启用iCloud服务,并确保你的Bundle
Identifier是唯一的;
然后,设置权限和容器,选择Capabilities-->启用iCloud,如下图所示:
如果之前没有选择开发者账号的话,这时,可能需要你登陆开发者账号;
最后,勾选CloudKit,这时Containers下的选项就可点了,选择Use
default container:
如果有错误提示,一般点击Fix
issue 之后,Xcode会帮我们修复;
二.
关于 CloudKit Dashboard
1.
点击上图中的 CloudKit Dashboard,或者这里,可以进入网页的仪表盘的主界面:
2.
下面,介绍一下这个界面:
SCHEMA :
CloudKit容器的高级类:Record
Types, Security Roles, 和Subscription Types,其中主要使用的是Record Types;
一个Record
Type用来定义一个单独的记录(可以理解为一个数据模型),相当于存储数据的模板,和数据库的表结构类似;
PUBLIC
DATA 和 PRIVATE DATA 就是你保存数据的地方,开发者可以查看所有的共享数据,但是只能看到自己的私密数据,无法看到用户的私密数据;这里没有显示PRIBATE DATA,其结果和PUBLIC DATA是一样的;
User
Records: 记录一些当前使用者的信息;
Default
Zone :这里可以查看数据的详细信息,也是后面主要使用的;
ADMIN:
Team
:主要是管理开发者团队权限的,这里不做过多介绍;
API
Access : 主要是用来添加一些授权信息,例如:创建 API Token .添加 Server-to-Server Key等;
Deployment
:配置开发环境,就是设置当前是开发环境,还是生产环境;如果当前是开发环境,可以重置开发环境的数据及设置,也可以切换到生产环境;
3. 手动添加Record Type :
这个数据模型可以在这里手动设置,也可使用程序保存到iCloud时自动生成,程序中设置了哪些属性,这里就会显示哪些;
下面介绍一下手动设置:
切回Record Type选项,点击右边栏的左上角的+,新增一个模型:
输入模型名称: 默认只有一个StringField的属性(这里暂且这么称呼吧),可以点击下面的Add Field... 新增属性列表;
同样可以选择属性的类型,如下图:
设置完成后,点击右下角的 Save按钮即可保存!这样,一个模型就建立好了...
4. 添加一条数据:
切换回PUBLIC DATA 选项下的 Default Zone ,可能是这样的:
点击 Add Record ID Query Index ,会显示如下界面:
这是一个空的存储器,还没有保存任何数据;
点击右边栏左上角的+ ,或者右边栏中间的New Record ,即可新建一条数据;
这时会发现,其数据结构和刚刚创建的模型一致,填写相应的数据即可:
然后,点击右下角的保存,即可生成一条记录:
当然,生成之后的记录,也是可以修改的...
数据模型(即Record Type)可能会不止一种,本示例中我设置了两种,一个名称为test,一个名称为Note,切换回Record
Type可查看另一个模型:
那么,怎么知道Default Zone里选择的是哪个模型呢?
回到Default Zone,中间蓝色区域的右上角的名称旁有个倒三角,这里可以选择使用(查询)哪个模型下的数据:
这里只有两个模型...
细心的会发现,在Record Type中的Note模型下有一行小字:1 Public Record ,1 Private Record,意思是:使用模型Note的有一条公共数据,一条隐私数据,由于我登陆的iCloud账号和开发者账号不一样,相当于是用户账号,所以这里是看不到那个隐私数据的.
5. Creating an API Token
选择左侧ADMIN分组下的API Access;
中间一列顶部的下拉列表选择API Tokens (还有一个是Server-to-Server Keys);
点击右边列左上角的+,或者Add API Token;
为你的Token起一个名字:
Sign In Callback :(可选的)指定一个回调方式:发送信息或者回调一个自定义网址;
Allowed Origins :(可选的)设置允许的域名
Discoverability :(可选)是否可见
Notes :(可选) 描述
以上信息填写完成后,点击右下角Save即可;这些信息创建完成后,也是可以修改的...
6. Creating Server-to-Server Key
首先,需要生成一个Server-toServer Certificate:
打开终端
执行指令之前最好先cd到一个你方便找到的目录(例如:桌面上的一个文件夹)
输入以下指令:
openssl ecparam -name prime256v1 -genkey -noout -out eckey.pem
这样就生成一个名为eckey.pem的证书,打开文件夹可以查看;
接着输入以下指令,获取Public Key:
openssl ec -in eckey.pem -pubout
这时终端内会出现如下信息:
read EC key writing EC key -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpS3JYi6T4tsMYXpNW7PCuggasB3e SCdmOcdbzOYAvJJom+99W783MNLlSYKduMmYUi46TnaPpamDDiD8NCsFpQ== -----END PUBLIC KEY-----
这个就是Public Key,复制出来,待用;
最后,回到CloudKit Dashboard:
选择API Access-->Server-to-Server Keys;
点击+,或者 Add Server-to-Server Key,新建一个key:
Public Key:这里输入刚刚复制的public Key;
Notes : 描述
点击右下角的Save,即可完成...
这些操作都比较简单,在我们后面使用代码保存数据到iCloud时可以在这里查看保存的信息详情,当前只能查看公共的;
相关API使用,稍后推出...
相关文章推荐
- 阿里云存储服务OSS基本概念
- Python Web框架Flask中使用百度云存储BCS实例
- Python Web框架Flask中使用七牛云存储实例
- Python Web框架Flask中使用新浪SAE云存储实例
- iOS之七牛云存储应用
- Glusterfs:趋于成熟的集群文件系统
- 腾讯举报360云盘涉黄:个人云存储走向末路?
- 多名日本女星的iCloud账户被盗、私照外泄,你的密码安全吗?
- 大家来参考,是否本博客需要增加又拍云存储呢?
- 七牛cdn云存储使用心得
- 云存储:架构先进技术高 个人企业两适宜
- 云计算体系架构之云存储技术与云存储服务
- 云存储两大架构分类TCS与LCA架构技术分析
- 热门云存储技术你知道几个
- 企业最佳云存储解决方案选型指导
- 选择云备份:应当怎样和云供应商签合同
- 微软发力云存储服务 再次更新SkyDrive
- 云计算对中国企业的意义
- 云计算论坛将开幕 业界巨头“云端”聚首
- IBM:四大路径推进云计算落地