Re: [問題] iCloud 同步不同 App 的資料

看板MacDev作者 (elver)時間11年前 (2013/09/14 10:25), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《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
文章代碼(AID): #1ICya7YR (MacDev)
文章代碼(AID): #1ICya7YR (MacDev)