身份验证,新用户的验证工作正常,但是在实时数据库中,没有存储任何用户信息。
/ 在Firebase方法中 /
public void addNewUser(String email, String username, String description, String website, String profile_photo){
User user = new User( userID, 1, email, StringManipulation.condenseUsername(username) );
myRef.child(mContext.getString(R.string.dbname_users))
.child(userID)
.setValue(user);
UserAccountSettings settings = new UserAccountSettings(
description,
username,
0,
0,
0,
profile_photo,
username,
website
);
myRef.child(mContext.getString(R.string.dbname_user_account_settings))
.child(userID)
.setValue(settings);
}
答案 0 :(得分:0)
正如弗兰克所说,您必须从数据库中启用对规则的读取,写入权限
然后您可以在其中更改以下参数
允许用户从您的数据库中读取所有数据,但如果未通过身份验证,则不能写入
"rules": {
".read": true,
".write": "auth!=null"
}
允许用户在不进行身份验证(不安全)的情况下读写数据库中的文档
"rules": {
".read": true,
".write": true
}
或者简单地使用最好的选项,即仅当用户使用任何Firebase Auth选项登录时才允许读取和写入
"rules": {
".read": "auth!=null",
".write": "auth!=null"
}