firebase - 如何使用firebase电话身份验证添加OTP过期时间
问题描述
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber: mobile,
timeout: const Duration(seconds: 5),
verificationCompleted: verificationCompleted,
verificationFailed: verificationFailed,
codeSent: codeSent,
);
我正在使用此代码段,但其中提到的超时是针对 autoOtpRetrievelTimeOut 但我正在寻找如何添加 otp 到期时间,例如 60 秒后我希望用户再次单击重新发送 OTP
解决方案
bool isTimeExpired = false;
Future.delayed(const Duration(seconds: 60), () {
setState(() { //Replace setState with your state management
// Enable Resend Option
isTimeExpired = true;
});
});
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber: mobile,
timeout: const Duration(seconds: 5),
verificationCompleted: verificationCompleted,
verificationFailed: verificationFailed,
codeSent: codeSent,
);
verificationCompleted(params)async{
if(isTimeExpired){
await FirebaseAuth.instance.signOut();
//your code
}
}
推荐阅读
- reactjs - useState 未使用过滤数组设置初始状态
- python - 我可以一次只打印其中一个问题吗?
- c# - 使用 MemoryStream 和 CryptoStream 时清除 Gen2 和 LOH 中的堆
- java - Car 对象和 Dog 对象是否用于现实生活中的程序?
- xamarin - 通过 TabBar Xaml 将视图模型中的参数传递给页面的 ctor?
- flask - 如何正确更新具有新值的外键?
- javascript - 在前端从 nodejs 管理 jwt
- javascript - js如何计算上传速度
- java - 实现验证方法以仅允许在 Java 中输入字符串
- django - 我无法访问新保存的模型实例的 ID 以用于处理同一页面中的另一个表单