Firebase无法更改displayName,displayName在任何情况下都为空
无法使用Firebase无法更改displayName,displayName在任何情况下都为空,firebase,flutter,dart,google-cloud-firestore,firebase-authentication,Firebase,Flutter,Dart,Google Cloud Firestore,Firebase Authentication,无法使用wait FirebaseAuth.instance添加更多用户信息 .createUserWithEmailAndPassword(电子邮件:\电子邮件,密码:\密码)功能 signup.dart文件的一部分: String\u电子邮件、\u密码、\u姓名; final formkey=new GlobalKey()` 未来注册()异步{ if(formkey.currentState.validate()){ formkey.currentState.save(); 试一试{ 等待F
wait FirebaseAuth.instance添加更多用户信息
.createUserWithEmailAndPassword(电子邮件:\电子邮件,密码:\密码)代码>功能
signup.dart
文件的一部分:
String\u电子邮件、\u密码、\u姓名;
final formkey=new GlobalKey()`
未来注册()异步{
if(formkey.currentState.validate()){
formkey.currentState.save();
试一试{
等待FirebaseAuth.instance
.createUserWithEmailAndPassword(电子邮件:\电子邮件,密码:\密码);
FirebaseUser FirebaseUser=等待FirebaseAuth.instance.currentUser();
Firestore.instance
.收集(“用户”)
.document(firebaseUser.uid)
.setData({“name”:_name});
等待firebaseUser.reload();
firebaseUser=等待FirebaseAuth.instance.currentUser();
印刷品(
“${firebaseUser.uid},${firebaseUser.email},${firebaseUser.displayName},$\此用户已创建的密码------”);
}捕获(e){
打印(${e.message}消息--------------------------------------------);
}
}否则{
打印(“出了问题”);
}
}
我尝试了很多方法,但仍然没有结果您正在Firestore中保存数据,并尝试从Firebase Auth获取名称。这是两项服务。不要尝试使用firestore,你能做的是
FirebaseUser firebaseUser = await FirebaseAuth.instance.currentUser();
var userUpdateInfo = UserUpdateInfo();
userUpdateInfo.displayName = _name;
firebaseUser.updateProfile(userUpdateInfo);
await firebaseUser.reload();
firebaseUser = await FirebaseAuth.instance.currentUser();
您正在Firestore中保存数据,并尝试从Firebase Auth获取名称。这是两项服务。不要尝试使用firestore,你能做的是
FirebaseUser firebaseUser = await FirebaseAuth.instance.currentUser();
var userUpdateInfo = UserUpdateInfo();
userUpdateInfo.displayName = _name;
firebaseUser.updateProfile(userUpdateInfo);
await firebaseUser.reload();
firebaseUser = await FirebaseAuth.instance.currentUser();
使用方法创建帐户后。createUserWithEmailAndPassword通过将用户的值传递给另一个类
final FirebaseAuth _auth = FirebaseAuth.instance;
//user object based on firebase
User _userFromFirebase(FirebaseUser user){
return user != null ? User(uid: user.uid):null;
}
Future loginWithEmailAndPass(String email,String password)async{
try{
AuthResult result = await _auth.signInWithEmailAndPassword(email: email, password: password);
FirebaseUser user = result.user;
return _userFromFirebase(user);
}catch(e){
print(e.toString());
return null;
}
}
通过创建新的dart文件,将user的值传递给新类
class User{
final String uid;
User({this.uid});
}
在主页中包含该dart文件作为用户名
有关指导,请参阅本教程。
使用方法创建帐户后。createUserWithEmailAndPassword通过
final FirebaseAuth _auth = FirebaseAuth.instance;
//user object based on firebase
User _userFromFirebase(FirebaseUser user){
return user != null ? User(uid: user.uid):null;
}
Future loginWithEmailAndPass(String email,String password)async{
try{
AuthResult result = await _auth.signInWithEmailAndPassword(email: email, password: password);
FirebaseUser user = result.user;
return _userFromFirebase(user);
}catch(e){
print(e.toString());
return null;
}
}
通过创建新的dart文件,将user的值传递给新类
class User{
final String uid;
User({this.uid});
}
在主页中包含该dart文件作为用户名
有关指导,请参阅本教程。
我没有得到我要做的事情。在视频中没有创建更多字段的用户。这是一个播放列表。。。。你可以跳过其中的一些内容转到你的部分…我没有得到我要做的事情。这与在视频中创建具有更多字段的用户不同。这是一个播放列表。。。。你可以跳过其中的一些内容转到你的角色。。。