Вот что я нашел, и я не уверен, что это все-таки ошибка или нет, но есть способ заставить ее работать.FirebaseUser, возвращенный signInWithEmailAndPassword, на самом деле не аутентифицирован.Только пользователь, возвращенный потоком onAuthStateChanged, является.Итак, если вы вызываете user.sendEmailVerification () из контекста onAuthStateChanged, то все в порядке.
Это будет работать:
_firebaseUserChanged = _auth.onAuthStateChanged.listen((FirebaseUser user) {
if (user != null && !user.isEmailVerified) {
user.sendEmailVerification();
}
});
Конечно, этот код упрощен.Мы не хотим отправлять подтверждение по электронной почте при каждой попытке входа в систему.