Firebase Android应用程序-不更新实时数据库

时间:2020-04-06 19:59:25

标签: android firebase firebase-realtime-database firebase-authentication

在尝试将数据推送到Firebase实时数据库时遇到一些错误。我检查了一些教程,根据所有这些教程,我没有做错任何事情。不幸的是,我无法从Android Studio仿真器设备中更新数据库。

我激活了调试模式,并逐步执行了每个进程,发现我的代码确实有效,因为数据库在推送到子ID时会做出响应。

package com.example.fbconnect;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;

public class MainActivity extends AppCompatActivity {
    Button btnsaves;
    Member member;
    DatabaseReference myRef;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btnsaves=(Button)findViewById(R.id.button);
        btnsaves.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                myRef = FirebaseDatabase.getInstance().getReference("Member");
                String id = myRef.push().getKey();
                member = new Member("MSmith", 12, id);
                myRef.child(id).setValue(member);
                Toast.makeText(MainActivity.this, "Success", Toast.LENGTH_SHORT).show();
            }
        });
    }
}

调试此行时

String id = myRef.push().getKey();

我看到数据库回答了一个代码。但这不会设置新值或更新现有数据库Childs的值。

激活调试模式后,我在android studio中发现了一些罕见的行,这些行可能会导致问题:

E / FirebaseInstanceId:在硬故障异常:AUTHENTICATION_FAILED上,主题同步或令牌检索失败。不会重试该操作。

我绝对可以确定我没有在Firebase中激活任何身份验证。通常每个人都应该能够读写(我知道这一点,但是我很想让这个数据库连接正常工作)。

你能帮我吗?

2 个答案:

答案 0 :(得分:1)

转到firebase控制台>“数据库”>“ firebase实时数据库”>“规则”选项卡,将读写更改为true。 还要检查您的设备是否已连接到互联网。

答案 1 :(得分:0)

Firebase中的默认规则适用于授权请求

您可以更改对True的读写

但不安全

任何具有Firebase网址的人都可以访问和更改数据

enter image description here