Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在firebase中读取数据列表?_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Android 如何在firebase中读取数据列表?

Android 如何在firebase中读取数据列表?,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我的代码没有从数据库中读取任何内容。事实上,该代码没有进入onDataChange方法。该代码是在登录活动中编写的。我使用了使用共享首选项的自动登录。因为有几种方法可以签名,所以我使用更新ui方法进入所需的活动。您能告诉我们数据库规则吗?在firebase控制台中,以公共模式打开“规则”选项卡。您的意思是说规则根目录上的read设置为true?把这行代码放到Log.e(“databaseError”,databaseError.getMessage())insideonCancelled()方法


我的代码没有从数据库中读取任何内容。事实上,该代码没有进入onDataChange方法。该代码是在登录活动中编写的。我使用了使用共享首选项的自动登录。因为有几种方法可以签名,所以我使用更新ui方法进入所需的活动。

您能告诉我们数据库规则吗?在firebase控制台中,以公共模式打开“规则”选项卡。您的意思是说规则根目录上的
read
设置为
true
?把这行代码放到Log.e(“databaseError”,databaseError.getMessage())inside
onCancelled()
方法,并让我知道在logcat中写入的消息。
     private void updateUI(boolean state,String uid){
    if(state) {
        Toast.makeText(this, "SUCCESSFULL", Toast.LENGTH_SHORT).show();

        if(uid != null) {
            Log.d(tag,"uid is"+uid);
            database= FirebaseDatabase.getInstance();
            action_taken_booking = database.getReference().child("Bae").child("Booking list").child(uid).child("Action taken");
            action_taken_blocked = database.getReference().child("Bae/Blocked list/" + uid + "/Action taken");
            times_blocked = database.getReference().child("Bae/Blocked list/" + uid + "/Times blocked");
            Log.d(tag,action_taken_booking.getParent().toString());
            action_taken_booking.addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    booking_action_taken =  dataSnapshot.getValue(boolean.class);
                    Log.d(tag,"booking_action_taken"+booking_action_taken);
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {

                }
            });

            action_taken_blocked.addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    blcoked_action = (Long) dataSnapshot.getValue();
                    Log.d(tag,"Blocked action"+blcoked_action);
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {

                }
            });
            times_blocked.addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    blocked_times = (Long) dataSnapshot.getValue();
                    Log.d(tag,"TimesBlocked"+blocked_times);
                }

                @Override
                public void onCancelled(DatabaseError databaseError) {

                }
            });
            Log.d(tag,"Upddate UI"+blcoked_action+"  "+ blocked_times);
            blocked_action_taken = (blocked_times - blcoked_action) == 0;
            if (booking_action_taken) {
                Intent nextActivity = new Intent(SigninActivity.this, HotelActivity.class);
                nextActivity.putExtra("uid", uid);
                startActivity(nextActivity);
            }
        }
    }
}