V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cubelate
V2EX  ›  iCloud

请问下 iCloud 备份和 iCloud 云盘的区别?

  •  
  •   cubelate · 2018-04-15 18:31:29 +08:00 · 27151 次点击
    这是一个创建于 2195 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在开发一个应用,但是在 iCloud 这里遇见一些问题,
    请教下大家,iCloud 备份和 iCloud 的云盘的区别是什么?

    默认情况下,应用生成的文档是在沙盒 Document 目录下的,我设置这些目录是否同步到 iCloud 的,也就是提供了应用的 开始 /关闭 iCloud 同步功能。不知道我这个理解是否正确?

    至于 iCloud 云盘,应该是另外的存储方案?
    7 条回复    2018-04-15 19:48:10 +08:00
    KevZhi
        1
    KevZhi  
       2018-04-15 19:00:49 +08:00 via iPhone   ❤️ 1
    iCloud 云盘,存储内容对用户可见并可操作导出对应文件以便给其他设备使用。需要 CloudKit
    iCloud 备份,应该是默认直接备份所有 Documents 内容。存储内容对用户不可见,无法单独导出,仅限本设备使用,用户可操作关闭本功能。
    KevZhi
        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、或者购物软件比如京东,这些软件并不是用来生产文件的,他的聊天记录数据库或者商品缓存没有向用户开放文件访问的必要。
    你开发了一个游戏,不想要用户导出存档
    cubelate
        3
    cubelate  
    OP
       2018-04-15 19:17:02 +08:00
    @KevZhi
    感谢回复。

    不过我理解的 iCloudKit 和 iCloud Document 是不同的,iCloudKit 类似与云端数据库,并非以文件的形式进行存储。

    关于可见,在 iOS11 的文件 app 里面,是可以看到 应用沙盒里面的 Document 目录的文件的,需要在应用的 plist 文件里面设置两个属性即可。设置之后,会出现在 我的 iPhone 这个文件的下面,而非 云盘的下面。

    刚刚路上想了一下,我理解的 iCloud 备份应该不是及时的,是需要接入 wifi+空闲时刻的行为。iCloud 云盘则应该是主动触发式的。
    KevZhi
        4
    KevZhi  
       2018-04-15 19:21:59 +08:00 via iPhone
    @cubelate 是这样没错,备份是非即时的,但是云盘需要用户手动允许流量下同步才能是完全即时。
    另外,云盘不是数据库存储,确实是文件式存储。
    就好比你的 App 支持保存到百度网盘一样。比如我开发一个办公软件,支持创建的文档保存到百度网盘或者自动同步到百度网盘。如果你的 app 是 im 这类只用数据库不生产文件的情况下,不需要使用云盘
    KevZhi
        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 太封闭了?
    agagega
        6
    agagega  
       2018-04-15 19:39:16 +08:00 via iPhone   ❤️ 1
    CloudKit 和 iCloud Drive 不一样,就像你不能在 iCloud 云盘里看到备忘录内容一样
    zhaidoudou123
        7
    zhaidoudou123  
       2018-04-15 19:48:10 +08:00
    @KevZhi #5 Office 系列是可见的,其实已经不少应用支持直接读写 iCloud 云盘,就相当于存储到文件里了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2708 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 15:46 · PVG 23:46 · LAX 08:46 · JFK 11:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.