适用于Android的Firebase数据库

时间:2018-06-30 21:20:08

标签: android firebase firebase-realtime-database

我正在使用Firebase开发适用于iOS和Android的应用程序。现在我有一个问题。对我而言,无法在我的Android应用中读取Firebase数据库数据。我看过很多教程,但是都行不通。甚至Firebase文档也帮不了我。 我想从数据库中读取数据并将其放入标签中。 有人可以帮我吗?

编辑:对不起,我忘记将代码放在此问题中。

这是我的MainActivity.java的完整代码:

public class MainActivity extends AppCompatActivity {

TextView readText;
Button readButton;



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    readText = (TextView) findViewById(R.id.readView);
    readButton = (Button) findViewById(R.id.readBtn);




    readButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {


            DatabaseReference mChild = FirebaseDatabase.getInstance().getReferenceFromUrl("https://myapplication-6ddba.firebaseio.com/").child("hallowelt").child("lol");

            mChild.addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

                  // String name = dataSnapshot.getValue(String.class);

                    readText.setText(dataSnapshot.getValue(String.class));

                }

                @Override
                public void onCancelled(@NonNull DatabaseError databaseError) {

                }
            });

        }
    });

}

}

我正在使用最新版本的Firebase。

以下是Firebase数据库规则:

"rules": {
".read": true,
".write": false }

1 个答案:

答案 0 :(得分:0)

您为什么要尝试通过DatabaseReference mChild = FirebaseDatabase.getInstance().getReferenceFromUrl("https://myapplication-6ddba.firebaseio.com/").child("hallowelt").child("lol");访问数据库?

据我了解,如果您将项目正确链接到数据库,则类似DatabaseReference mChild = FirebaseDatabase.getInstance().getReference().child("hallowelt").child("lol");之类的东西就足够了。