如何在firebase android中使用其映射值编写键

Abd*_*her 5 android firebase-realtime-database

我想通过添加一个带有地图对象的键来存储用户信息

private void createUserData() {
    Toast.makeText(LoginActivity.this, "test begin",
            Toast.LENGTH_SHORT).show();
    DatabaseReference usersRef = FirebaseDatabase.getInstance().getReference().child("users");

    //set fields data
    Map<String, String> userData = new HashMap<>();
    userData.put("userId", "test id ");
    userData.put("email", "as@gmail");
    userData.put("userName", "abdo");

    usersRef.child("userkey").setValue(userData);

    Toast.makeText(LoginActivity.this, "test end",
            Toast.LENGTH_SHORT).show();

}
Run Code Online (Sandbox Code Playgroud)

当我单击按钮触发此代码时,两个 Toast 对象都显示出来,但没有节点添加到用户节点。这段代码将数据写入 firebase 数据库有什么问题?

小智 -1

1.更改<String, String><String, Object>

  Map<String, Object> userData = new HashMap<>();
  userData.put("userId", "test id ");
  userData.put("email", "as@gmail");
  userData.put("userName", "abdo");
    
  usersRef.child("userkey").updateChildren(userData);
Run Code Online (Sandbox Code Playgroud)

2.更改firebase数据库获取实例,例如FirebaseDatabase firebaseDatabase = FirebaseDatabase.getInstance("https://yourdatabasename-default-rtdb.asia-southeast1.firebasedatabase.app")

从此收到

可能是数据库区域问题,如下所示

Firebase 数据库连接被服务器强制终止。不会尝试重新连接。原因:数据库位于不同的区域。请将您的数据库 URL 更改为https://databasename-default-rtdb.asia-southeast1.firebasedatabase.app