作者elver (elver)
看板MacDev
标题Re: [问题] iCloud 同步不同 App 的资料
时间Sat Sep 14 10:25:08 2013
※ 引述《leondemon (狗狗)》之铭言:
: 请教各位先进
: 因为有一个需求 必须先发布一个 Lite 版 然後之後才发布另一个完整版
: 这两个 App 是各自独立的(也是不同的开发者帐号)
: 而希望在 Lite 版上的资料 (SQLite data)
: 能够在使用者下载完整版之後,能够顺利的同步到完整版的 App 中
: 目前想到的解法 是使用 iCloud
: 虽然上网查了一下 似乎是可以在同一个 Device 而不同 App 之间使用 iCloud 共用资料
: (这一点我不是很确定 不知道有没有人有经验?)
: 但是有几点事项不是很确定,希望能够帮忙指点一下:
先说明一下,就我知道的iCloud有分2种
一种是开发者将档案放在可以iCloud会备份的位置(ex.Documents)
(预设是自动备份,开发者可以设成不要),是整个备份的那种,
我想这应该不是你要问的吧~~!
另一种是让开发者用来,让使用者用此一App在不同iDevice可以同步使用资讯用
以下回答是指这一种
: 1. 能否再次确认两个 App 之间(不同的开发者帐号),能否使用 iCloud 同步资料?
不能使用,不同开发者,视为不同的位置,如果你有勾取Enitilements File
会发现是绑帐号 ,(和Keychain一样)
: 2. 两者的 App 都是支援 iOS 5.0+,在这环境下使用 iCloud 是否没有问题?
你要担心的是JB才是问题,目前收取,iCloud有2种方式
一种是设路径後,每次用到自己上传下载(时间,动作 自己掌控 没问题)
另一种是设路径後,自己上传,下载触发交给
NSUbiquitousKeyValueStoreDidChangeExternallyNotification
但是 只要有在jb的iDevice内有灌AppSync 就会被档下来
所以Notification形同没作用
: 3. 需要同步的资料是 SQLite 的档案,若不同 device 之间的资料有 conflict
: 是否会自动 merge?
注意容量大小,而是有限制的,且是以"後传"的当新资料,iCloud没那麽聪明
所以merge 方式 请自己写程式辨别
: 4. 同一支装置的 App 之间利用 iCloud 同步资料,有没有什麽需要注意的地方?
没问题,因为是读取同一个地方(同一个开发者帐号的话),会很快
另外提一下,iCloud不是随时都在同步的,假设A装置上传,B装置接收
AB都使用3G 大概最少要20秒,最长5分钟
AB都是WiFi 同一网路 且没有proxy问题 大概最少要6秒,最长5分钟
AB都是WiFi 同一网路 有设proxy 这很难说,,因为有些设proxy设定很奇怪
以让你连不到iCloud,却又可以 iMessage
所以最快6秒 最长,,到你网路通才有
其实我只是想要说明,iCloud传值,会有时间差,
而且使用者不一定会在iCloud内把"文件和资料"打开
对你而言应该是,使用指是否有在用iCloud才是问题~~
: 谢谢 ^^
以上是我自己的测试过的经验,如果各位发现有错误的地方,也恳请指正,
让我知道,TKS~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 115.82.204.27