firebase - 在 Flutter 上使用电子邮件和密码进行 Firebase 身份验证的示例?
问题描述
第一次实施 Firebase Auth,这也是 Flutter 开发人员的新手,我希望使用电子邮件和密码,而不是 Google 登录。我看到的唯一使用 Firebase 身份验证的例子是匿名的或与 Google 一起使用的。是否有资源/教程显示如何使用 signInWithEmailAndPassword 方法正确设置调用?
非常感谢!
解决方案
在我的应用程序中,我有一个 auth 类,因为我不喜欢在我的小部件类中乱扔非小部件代码,但是如果你愿意,你可以在你的小部件类中添加这个代码。
在 auth.dart 我有:
import 'package:firebase_auth/firebase_auth.dart';
class Auth {
final FirebaseAuth auth = FirebaseAuth.instance;
Future<User> handleSignInEmail(String email, String password) async {
UserCredential result =
await auth.signInWithEmailAndPassword(email: email, password: password);
final User user = result.user!;
return user;
}
Future<User> handleSignUp(email, password) async {
UserCredential result = await auth.createUserWithEmailAndPassword(
email: email, password: password);
final User user = result.user!;
return user;
}
}
然后在我的登录/注册屏幕中,我创建了我的 auth 类的一个实例:
var authHandler = new Auth();
最后,在我的登录按钮 onPressed 回调中,我有:
onPressed: () {
authHandler.handleSignInEmail(emailController.text, passwordController.text)
.then((FirebaseUser user) {
Navigator.push(context, new MaterialPageRoute(builder: (context) => new HomePage()));
}).catchError((e) => print(e));
}
推荐阅读
- r - R中二进制值的随机化测试
- javascript - jQuery获取来自AJAX的while循环数据中的属性值
- javascript - nuxt.js 中反应性的奇怪问题
- swift - 使用集群缩小时,mkmapView 变得非常慢
- python-3.x - 如何在演示文稿中共享交互式 pyplot 图表 [已解决]
- ios - 为什么从搜索栏退出键盘后会留下 UIToolbar?
- python - 打印一个 Python 数组,每个元素保留 12 位小数
- twitter-bootstrap - Bootstrap SCSS: $color: theme-color("primary") 不是颜色
- typescript - 如何在 NGRX 中创建非记忆选择器。不想要以前的数据
- r - 当第 2 列达到每个组中的最大值时,如何添加新列以从第 1 列中提取数字/字符?