будет содержать значение что-то вроде 'https: //.firebase.com/Users/Nick123.
аю приложение для Android, используяFirebase
база данных в реальном времени. Когда новый пользователь регистрируется в моем приложении, данные этого пользователя сохраняются в базе данных Firebase.
Пользователь должен предоставить следующие данные для регистрации:
Полное имяЭлектронное письмоимя пользователяпарольСтруктура базы данныхВсякий раз, когда новый пользователь пытается зарегистрироваться, я должен убедиться, что имя пользователя каждого пользователя уникально, поэтому я проверяю базу данных, еслиusername
введенный пользователем уже существует в базе данных или нет.
Для этого я написал следующий метод:
private boolean usernameExists(String username) {
DatabaseReference fdbRefer = FirebaseDatabase.getInstance().getReference("Users/"+username);
return (fdbRefer != null);
}
Моя логика этого метода заключается в том, что еслиgetReference
метод не может найти ссылку на указанный путь, он возвратит нуль, чтобы я мог вернутьfdbRefer
являетсяnull
или нет. ЕслиfdbRefer
являетсяnull
тогда это означает, чтоusername
не существует в базе данных.
Проблема с этим методом в том, что он всегда возвращаетtrue
был ли введенusername
существует в базе данных или нет. Что заставило меня поверить, чтоfdbRefer
никогдаnull
.
Это подводит меня к моему вопросу ...
ВопросЧто значитgetReference
возврат метода, когда он не может найти указанный путь вfirebase
базы данных и как правильно проверить, еслиusername
уже существует в базе данных или нет?