Android 使用限制查询Firebase数据库

Android 使用限制查询Firebase数据库,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我刚开始使用firebase,它非常有用 我有这样的节点 目前,我是这样写的,它会返回我所有的信息。如果我有1k条消息,它将返回1k条消息。我只想查询最新的100条消息。可能吗?我需要写云函数吗 private void retrieveConversation(String conversationID) { Query queryRoom = FirebaseDatabase.getInstance().getReference().child("Conversation").ch

我刚开始使用firebase,它非常有用

我有这样的节点

目前,我是这样写的,它会返回我所有的信息。如果我有1k条消息,它将返回1k条消息。我只想查询最新的100条消息。可能吗?我需要写云函数吗

private void retrieveConversation(String conversationID) {

    Query queryRoom = FirebaseDatabase.getInstance().getReference().child("Conversation").child(conversationID);
    queryRoom.keepSynced(true);
    queryRoom.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            Conversation conversation = dataSnapshot.getValue(Conversation.class);
            if (conversation != null) {
                conversation = updateConversation(conversation);
                mainMessage.conversations.put(conversation.getId(), conversation);
                EventBus.getDefault().post(new ChatAdapter.AddMessage());
            }
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });
}
请尝试在查询时使用limitToLastint值

或者您可以使用时间戳对它们进行排序,如

请尝试在查询时使用limitToLastint值

或者您可以使用时间戳对它们进行排序,如


或者你可以像这样很容易地在firestore买到它们

firebase.firestore().collection('messages').limit(100).get()

或者你可以像这样很容易地在firestore买到它们

firebase.firestore().collection('messages').limit(100).get()

啊,太好了。我需要按自己的时间戳点菜。谢谢,谢谢,伙计!快乐编码:在哪里我可以找到更多关于fireabase查询生成器的文档?@FernandoTorres:参考啊,太好了。我需要按自己的时间戳点菜。谢谢,谢谢,伙计!快乐编码:在哪里可以找到更多关于fireabase查询生成器的文档?@FernandoTorres:Reference
firebase.firestore().collection('messages').limit(100).get()