Firestore获得最喜欢的帖子

时间:2018-07-06 12:45:14

标签: java android firebase google-cloud-firestore

我正在制作一个简单的应用程序,在其中我要介绍最喜欢的帖子。我正在使用Cloud Firestore。我的问题是在这种情况下查询应如何显示? (我正在使用Java)

这是Firestore树:

-ROOT
--Posts
---Post
----Likes

“喜欢”集合是一组用户ID。

1 个答案:

答案 0 :(得分:0)

假设Likes属性的类型为数字而不是字符串,请使用以下代码:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
DocumentReference ref = rootRef.collection("Posts").document("Post");
ref.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
        if (task.isSuccessful()) {
            DocumentSnapshot document = task.getResult();
            if (document.exists()) {
                long numberOfLikes = document.getLong("Likes");
                Log.d(TAG, String.valueOf(numberOfLikes));
            } else {
                Log.d(TAG, "No such document");
            }
        } else {
            Log.d(TAG, "get failed with ", task.getException());
        }
    }
});

logcat中的输出将为点赞次数。