如何在Android上访问Firebase数据库

时间:2017-01-01 14:44:25

标签: android firebase firebase-realtime-database

我正在尝试在Android应用程序中使用Firebase。

这是我的数据结构。

enter image description here

这里我想检索已登录用户的所有帖子(如果有的话)。我将每个博客文章作为推送方法插入。所以我需要检索由登录用户创建的帖子。我可以使用FirebaseRecyleView检索Blog密钥中的所有帖子。现在我只需要检索由登录用户创建的帖子。我试过了,没有什么对我有用。

感谢提前

1 个答案:

答案 0 :(得分:2)

1.像这样获取登录用户的Uid。

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();

2.获取您的Firebase数据库参考:

FirebaseDatabase database = FirebaseDatabase.getInstance();

3.从数据库中获取所有已记录用户的帖子

 List<Blog> myBlogs = new ArrayList();
 database.child("myblog-b2002").child("Blog").orderByChild("uid").equalTo(uid).addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
          if(dataSnapshot==null)return;
          for(DataSnapshot postSnapshot : dataSnapshot.getChildren()){
              myBlogs.add(postSnapshot.valueOf(Blog.class));
          }  
        }

        @Override
        public void onCancelled(FirebaseError firebaseError) {

        }
    });