2014-02-15 122 views
0

我正在嘗試構建基於iOS的新聞應用程序。我瀏覽了一些最好的新聞應用程序,發現當我點擊任何菜單(例如Home)時,他們只請求一次家庭數據,下次我點擊Home時,我認爲他們顯示緩存的數據因爲我沒有看到任何數據請求的跡象,保持應用程序的速度。處理應用程序中的數據請求,最佳做法

那麼他們如何維護與最新數據的應用程序,因爲每次顯示緩存數據時,數據可能已經在服務器中更改,可能不反映在應用程序中。那麼在應用程序中處理數據請求的最佳方式是什麼?它是否像我應該請求每次點擊菜單按鈕上的數據,或者我應該維護一些定時器來請求來自服務器的最新數據,其餘時間顯示緩存數據。

回答

1

使用CoreData來緩存新聞並存儲時間戳,並在顯示給用戶之前檢查時間戳。如果上次更新的時間早於「x」分鐘,則從服務器獲取數據。

此外,您可以在服務器上存儲新聞文章的最新更新時間,並創建一個API以僅返回文章ID及其時間戳。然後在您的應用程序中,首先查詢時間戳,然後僅提取數據庫中丟失的文章或舊時間戳。

1

最簡單和最流行的方法是使用Great Http庫,如AFNetworkASIHttp

該庫以最推薦的方式提供對緩存的支持。

通過設置簡單的cachePolicy您可以輕鬆實現您的目的。

它不僅僅是緩存它可以自己處理許多隱藏http複雜性(cookie,https認證,未修改的http頭等等)。

我強烈建議你使用這種方式,因爲我已經做了一些ios新聞閱讀應用程序。

相關問題