2010-03-07 99 views
0

我目前正在開發一個帶有大型參考數據庫的iPhone應用程序(使用由預填充的sqlite數據庫支持的Core Data)。一旦應用程序正式運行並部署到客戶端的iPhone上,我需要該工具來更新/插入少量數據。做這件事的最佳做法/方法是什麼?發送數據更新到iPhone應用程序的最佳做法?

當更新的頻率每天大約一個月左右時,可能會出現偶然性。當數據更新每隔幾個月發生一次時發生的其他事件。

這樣做的建議方法是什麼?請注意,我不預期這些更新會有任何數據模型更改 - 這純粹是數據的插入/更新。現在我開始研究使用推送數據通知(q:有效載荷大小限制?),應用商店更新(僅限代碼/數據模型,而不是數據更新?)以及使用我的自己的臨時數據服務器(應用程序連接到例行檢查更新)。

任何人都可以請給我提供上面的任何指針嗎?

預先感謝

回答

2

IIRC推送通知具有256個字節的最大有效載荷。足夠用於通知目的,但不是更多。收到通知後,您的應用仍然需要從您自己的服務器上下載實際數據。

請注意應用程序包不能在設備上寫入。因此,如果您的應用需要更新數據存儲,則應在首次啓動時將預填充數據庫文件從應用包中複製到應用的文檔目錄。

應用程序商店更新肯定是可行的(特別是現在,蘋果似乎已經將其審覈過程最多隻有幾天),但請注意,應用商店更新將始終替代整個應用程序包(代碼和數據) ,所以如果您的預填充參考數據庫很大,那麼客戶每次都必須全部下載它。

+0

謝謝Ole。聽起來像我需要添加應用程序功能去我自己的服務器下載數據,然後使用核心數據插入/更新到數據存儲。 回覆:應用商店更新,你提出一個有趣的觀點。我預期的應用程序的一個功能是,客戶端可以添加收藏夾/標籤與預先填充的數據。您提到應用商店更新將替換整個捆綁包。因此,如果我進行應用更新,現有的預填充數據庫+客戶端添加的收藏夾/標籤數據會被完全覆蓋嗎?如果是的話,有沒有辦法在應用商店更新中保留客戶端添加的數據? – tofrizer 2010-03-08 09:47:09

+0

接受答案,我會問我的第二個問題(在我最後的評論中)作爲一個單獨的帖子。再次感謝Ole。 – tofrizer 2010-03-09 12:09:27

相關問題