簡體   English   中英

如何從android的firebase數據庫中的uid獲取/檢索多個數據?

[英]How do I get/retrieve multiple data from uid in the firebase database in android?

如何使用以下代碼從 firebase 獲取數據?
登錄成功后出現空指針異常?

DatabaseReference mref = FirebaseDatabase.getInstance().getReference().child("/Users/Students")
                    .child(FirebaseAuth.getInstance().getCurrentUser().getUid());
            mref.addValueEventListener(new ValueEventListener() {
                @SuppressLint("SetTextI18n")
                @Override
                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                    for (DataSnapshot ds : dataSnapshot.getChildren()){

                        email = ds.child("email").getValue().toString();
                        full_name = ds.child("full_name").getValue().toString();
                        roll_number = ds.child("roll_number").getValue().toString();
                        admission_id = ds.child("admission_id").getValue().toString();
                        phone_no = ds.child("phone_number").getValue().toString();
                        branch = ds.child("branch").getValue().toString();
                        year = ds.child("year").getValue().toString();
                        semester = ds.child("semester").getValue().toString();
                        section = ds.child("section").getValue().toString();
                        course = ds.child("course").getValue().toString();
                        batch = ds.child("batch").getValue().toString();
                        dob = ds.child("dob").getValue().toString();
                        address = ds.child("address").getValue().toString();
                    }

                }

我的 Firebase 數據庫是:

在此處輸入圖片說明

刪除以下內容:

 for (DataSnapshot ds : dataSnapshot.getChildren()){

由於您已經可以訪問 uid,因此您不需要在直接子級內部循環來獲取值。

所以只需這樣做:

 public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

                    email = dataSnapshot.child("email").getValue().toString();
                    full_name = dataSnapshot.child("full_name").getValue().toString();
                    roll_number = dataSnapshot.child("roll_number").getValue().toString();
                    admission_id = dataSnapshot.child("admission_id").getValue().toString();
                    phone_no = dataSnapshot.child("phone_number").getValue().toString();
                    branch = dataSnapshot.child("branch").getValue().toString();
                    year = dataSnapshot.child("year").getValue().toString();
                    semester = dataSnapshot.child("semester").getValue().toString();
                    section = dataSnapshot.child("section").getValue().toString();
                    course = dataSnapshot.child("course").getValue().toString();
                    batch = dataSnapshot.child("batch").getValue().toString();
                    dob = dataSnapshot.child("dob").getValue().toString();
                    address = dataSnapshot.child("address").getValue().toString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM