2016-02-16 48 views
1

我在我的android应用中使用Firebase,并且我注意到该应用使用了大量带宽。 我只执行读取较低节点的子节点,如最佳实践中所述,以节省带宽。当用查询读取Firebase数据库带宽使用情况

如果我执行这样的查询:

Query queryRef = firebaseRef.orderByChild("internalKey").equalTo(false); 
queryRef.addListenerForSingleValueEvent(new ValueEventListener() 
     { 
      ... 

在数据库带宽使用计数所有的子节点或者只有那些internalKey =假?

回答

3

带宽计算您上传和下载的数据量。这真的很简单。

如果您在internalKey上有defined an index,则Firebase将过滤其服务器上的数据,并仅返回符合条件的元素。

但是,如果您没有internalKey上的索引,则所有数据都将下载到客户端,然后客户端将执行过滤。您还应该在logcat iirc中看到有关该警告。

当您看到较大的带宽使用情况时,我建议启用调试日志记录(Firebase.getDefaultConfig().setLogLevel(Level.DEBUG))并检查logcat中的流量是否符合您的预期。

+0

是的,我有一个关键的索引。文档没有指定这些信息。只有指出该指数用于表演。谢谢!我会尝试你所建议的。 – Blodhgard