我在我的Android应用中使用Firebase,我注意到该应用使用了大量带宽。 我执行只读取较低节点中的子节点,如最佳实践中所述,以节省带宽。
如果我执行这样的查询:
Query queryRef = firebaseRef.orderByChild("internalKey").equalTo(false);
queryRef.addListenerForSingleValueEvent(new ValueEventListener()
{
...
在数据库中,带宽使用情况会计入所有子节点,还是只计算那些具有internalKey = false?
的子节点答案 0 :(得分:3)
带宽计算您上传和下载的数据量。它真的很简单。
如果internalKey
上有defined an index,则Firebase将过滤其服务器上的数据,并仅返回符合条件的元素。
但是,如果您在internalKey
上没有索引,则所有数据都将下载到客户端,然后客户端将进行过滤。你还应该在logcat iirc中看到关于它的警告。
当您看到大量带宽使用时,我建议启用调试日志记录(Firebase.getDefaultConfig().setLogLevel(Level.DEBUG)
)并检查logcat中的流量是否符合您的预期。