如何将Firebase数据库持久性存储限制为仅限某些节点?

时间:2017-05-20 13:45:03

标签: ios swift firebase firebase-realtime-database persistence

将以下代码添加到private void initializeCardItemList(){ CardItemModel cardItemModel; String[] cardTitles = getResources().getStringArray(R.array.fav_cards); String[] cardContents = getResources().getStringArray(R.array.fav_cards_content); final int length = cardTitles.length; for(int i=0;i<length;i++){ cardItemModel = new CardItemModel(cardTitles[i],cardContents[i]); cardItems.add(cardItemModel); } } 会使Firebase数据库在用户离线时可用:

AppDelegate

我们如何才能在离线模式下提供数据库的某些部分,并在用户联机时提供某些部分?

1 个答案:

答案 0 :(得分:1)

简短回答:你不能。 Firebase目前不提供这种精细的持久性范围API。

您可以做的是减少/增加持久性缓存使用的磁盘空间量。默认情况下,它将使用最多 10MB 的磁盘空间来缓存数据(顺便说一下,按照今天的标准少量)。这由FIRDatabase.persistenceCacheSizeBytes属性控制。

例如,使用更大的缓存可能会从您想要的子集中容纳更多节点...如果您幸运的话:)

相反,较小的值可能会以显着的方式影响您的网络性能/成本。