Firebase android 订购

Xer*_*ero 1 android firebase firebase-realtime-database

我无法在日期字段(时间戳)上使用 orderByChild 订购结果

这里的数据结构:

在此处输入图片说明

和代码:

  DatabaseReference mMessagesRef = FirebaseDatabase.getInstance().getReference().child("messages")
                .child(mConversationId).getRef()
                .orderByChild("date").getRef();
        mMessagesRef.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

                for(DataSnapshot data: dataSnapshot.getChildren()){
Run Code Online (Sandbox Code Playgroud)

查询返回了值,但不是按日期排序,而是按键返回。

Dee*_*h M 5

Try this:
DatabaseReference mMessagesRef=FirebaseDatabase.getInstance().getReference();
Query queryRef = mMessagesRef.child("messages").orderByChild("date");
queryRef.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

                for(DataSnapshot data: dataSnapshot.getChildren()){
Run Code Online (Sandbox Code Playgroud)