2014-05-15 38 views
3

我構建捆綁JSON數據的應用程序。我想切換到Firebase作爲後端,但我需要確保即使Firebase處於脫機狀態也可以訪問數據。無法保證用戶在啓動應用程序時將擁有互聯網連接。數據由相當大的JSON blob組成。如何緩存Firebase數據以供離線使用?

我聽說firebase確實在iOS上緩存了離線訪問數據,這很好。我只需要知道如何在首次運行應用程序時捆綁數據,以便用戶在獲得網絡連接之前就可以使用該應用程序。

+0

我知道這是很久以前,但你找到了解決辦法嗎? – James

+0

我最近沒有檢查過,但他們早就答應過,所以我期望它在那裏。但是,如果你在這裏寫作,這可能意味着它尚未提供。 – igorsales

回答

4

正如您發現的那樣,Firebase Obj-C客戶端確實支持離線訪問/磁盤持久性測試。詳細信息請見here

但是這並沒有解決您希望使用初始數據爲應用程序「播種」的需求,以便在應用程序能夠連接到Firebase之前獲取數據。不幸的是,沒有直接的支持。

您可以嘗試使用Firebase的一個冒險解決方案是僅對有問題的數據執行setValue操作,以便爲緩存播種。這應該可行,但最終會嘗試將該數據寫入Firebase,當應用程序連接時,所以您可能希望具有安全規則以防止用戶實際修改該數據。正如我所說,這將是一個hacky解決方案。

現在最好是在應用程序中使用特殊邏輯來處理此問題,這些邏輯從第一次從Firebase獲取數據時從其他數據源(硬編碼值或嵌入文件或其他)中提取數據。

對不起,目前沒有直接的支持。我們會看看是否可以在未來更直接地支持這一點。

+0

這方面的任何消息?另見這篇文章:https://stackoverflow.com/questions/39602673/firebase-offline-storage-advanced-manual-sync-and-progress-information?noredirect=1&lq=1如果Firebase可以支持這一點,它會是我們的應用程序的一個很好的解決方案,目前我們正在與一個SQLite數據庫進行同步並在App start重新加載所有內容 – brokedid