1
KevZhi 2018-04-15 19:00:49 +08:00 via iPhone 1
iCloud 云盘,存储内容对用户可见并可操作导出对应文件以便给其他设备使用。需要 CloudKit
iCloud 备份,应该是默认直接备份所有 Documents 内容。存储内容对用户不可见,无法单独导出,仅限本设备使用,用户可操作关闭本功能。 |
2
KevZhi 2018-04-15 19:12:39 +08:00 via iPhone
一般情况下,生产力应用会使用 iCloud 云盘功能。
我所说的“生产力应用”可以理解为“以生产内容,创造文档”为目的的应用。 比如 1.你写了一个乐谱记谱 App,这个 App 的主要目的是创作乐谱文件。 2.你开发了一个办公软件,功能类似 MS Office,主要目的是创建文本文档 /表格...文件 3.你开发了一个 CAD 软件,可以在手机上画图纸,也就是创作图纸文件。 在软件开发商(也就是你)不提供云存储服务,而又想使用云存储功能的时候,使用 iCloud 云盘是很方便的。 另外其他目的也可以用,比如我知道的世界迷雾,就会将用户在地图上开拓的轨迹备份到 iCloud 云盘,因为这个东西日积月累起来确实很有价值,被分到 iCloud 云盘以后,用户可以很方便的导出并备份到其他地方,多一些安全。 还有一些 TodoList 类软件也使用 iCloud 云盘多端同步 什么情况不适合用 iCloud 云盘的 CloudKit 你开发了一个 IM 软件,比如 QQ、或者购物软件比如京东,这些软件并不是用来生产文件的,他的聊天记录数据库或者商品缓存没有向用户开放文件访问的必要。 你开发了一个游戏,不想要用户导出存档 |
3
cubelate OP @KevZhi
感谢回复。 不过我理解的 iCloudKit 和 iCloud Document 是不同的,iCloudKit 类似与云端数据库,并非以文件的形式进行存储。 关于可见,在 iOS11 的文件 app 里面,是可以看到 应用沙盒里面的 Document 目录的文件的,需要在应用的 plist 文件里面设置两个属性即可。设置之后,会出现在 我的 iPhone 这个文件的下面,而非 云盘的下面。 刚刚路上想了一下,我理解的 iCloud 备份应该不是及时的,是需要接入 wifi+空闲时刻的行为。iCloud 云盘则应该是主动触发式的。 |
4
KevZhi 2018-04-15 19:21:59 +08:00 via iPhone
@cubelate 是这样没错,备份是非即时的,但是云盘需要用户手动允许流量下同步才能是完全即时。
另外,云盘不是数据库存储,确实是文件式存储。 就好比你的 App 支持保存到百度网盘一样。比如我开发一个办公软件,支持创建的文档保存到百度网盘或者自动同步到百度网盘。如果你的 app 是 im 这类只用数据库不生产文件的情况下,不需要使用云盘 |
5
KevZhi 2018-04-15 19:27:29 +08:00 via iPhone
@cubelate 看了一下我手机里的软件除了苹果自家的 iWork 三件套 /Garageband,就没有其他软件选择将 Documents 对用户以“文件” App 的形式可见。基本都在自己的沙盒里
应该是没跟上节奏。这是 iOS11 的 Api。如果类似 WPS 可以默认存储到“文件”,用起来是很方便的。大把应用都能支持这个功能的话,互通性会好很多。比如音乐编曲软件。FL 手机版能导出 MIDI 存在“文件”里面,LaunchPad 录的音导出 aiff 存在“文件”里面,最后到 GarageBand 里面混音,谁还会说 iOS 太封闭了? |
6
agagega 2018-04-15 19:39:16 +08:00 via iPhone 1
CloudKit 和 iCloud Drive 不一样,就像你不能在 iCloud 云盘里看到备忘录内容一样
|
7
zhaidoudou123 2018-04-15 19:48:10 +08:00
@KevZhi #5 Office 系列是可见的,其实已经不少应用支持直接读写 iCloud 云盘,就相当于存储到文件里了
|