在新用户使用Firebase用户界面注册(多提供商)后,如何以及何时将用户数据推送到Firebase实时数据库。
我能够使用GOOGLE_PROVIDER
将用户数据推送到用户的节点,但是当我使用EMAIL_PROVIDER
登录时应用程序崩溃了。
用户类
public class User {
private String name;
private String email;
private String phone;
private String photo;
public User() {
}
public User(String name, String email, String phone, String photo) {
setName(name);
setEmail(email);
setPhone(phone);
setPhoto(photo);//when arg ==null Photo = MyUrls.NEWUSERIMG
}
...
}
...
private void onSignedInInitiliaze() {
//Todo Email Provider !
String name = mAuth.getCurrentUser().getDisplayName();
String email = mAuth.getCurrentUser().getEmail();
String phone = "";//// TODO
String photo = mAuth.getCurrentUser().getPhotoUrl().toString();
User currentUser = new User(name, email, phone, photo);
userRef.setValue(currentUser);
}