Хорошо, я извлек из вашего кода наименее необходимый материал, необходимый для firebase, и попробовал его. Это работало с моей тестовой базой данных.
Вот код, который я использовал:
public class MainActivity extends AppCompatActivity {
private DatabaseReference mDatabse;
private FirebaseAuth mAuth;
private Button mCreateBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mAuth = FirebaseAuth.getInstance();
mCreateBtn = (Button) findViewById(R.id.btn);
mCreateBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String display_name = "Otto";
String email = "mmuuuu@email.com";
String password = "111111";
if(!TextUtils.isEmpty(display_name) && !TextUtils.isEmpty(email) && !TextUtils.isEmpty(password)){
register_user(display_name, email, password);
}
}
});
}
private void register_user(final String display_name, String email, String password) {
mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
FirebaseUser current_user = FirebaseAuth.getInstance().getCurrentUser();
String uid = current_user.getUid();
mDatabse = FirebaseDatabase.getInstance().getReference().child("Users");
HashMap<String, String> usermMap = new HashMap<>();
usermMap.put("name", display_name);
usermMap.put("status", "Hey, ich benutze die - App.");
usermMap.put("image", "default_pic");
usermMap.put("thumb_image", "default_pic");
mDatabse.setValue(usermMap);
} else {
Toast.makeText(MainActivity.this, "Fehler! Überbrüfe noch einmal die Eingabefelder!", Toast.LENGTH_LONG).show();
}
}
});
}
}
(Обратите внимание, что я не использовал поля EditText, но поместил значения непосредственно в строковые переменные, для упрощения.)
Вот мои правила базы данных:
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
А вот и записанные данные из моей базы данных. (Я экспортировал его в JSON-файл):
"Users" : {
"image" : "default_pic",
"name" : "Otto",
"status" : "Hey, ich benutze die - App.",
"thumb_image" : "default_pic"
},