[英]OTP Verification in flutter without Firebase
使用 email 和密码使用 firebase flutter 注册新用户后。有没有办法在没有 firebase 电话身份验证的情况下验证他的电话号码,这样同一用户就不会使用电子邮件/密码和电话号码注册(我想注册他一次使用他的 email 和密码并验证他的电话号码)?
(目前这个 package 已经过时了,不支持 Null Safety)。 你可以试试 flutter_otp package 我认为这是最好的选择,
您可以访问https://pub.dev/packages/flutter_otp了解更多信息,
试试下面的例子
import 'package:flutter/material.dart';
import 'package:flutter_otp/flutter_otp.dart';
// Now instantiate FlutterOtp class in order to call sendOtp function
FlutterOtp otp = FlutterOtp();
class SendOtp extends StatelessWidget {
String phoneNumber = "93XXXXXXXX"; //enter your 10 digit number
int minNumber = 1000;
int maxNumber = 6000;
String countryCode ="+91"; // give your country code if not it will take +1 as default
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("send otp using flutter_otp ")),
body: Container(
child: Center(
child: RaisedButton(
child: Text("Send"),
onPressed: () {
// call sentOtp function and pass the parameters
otp.sendOtp(phoneNumber, 'OTP is : pass the generated otp here ',
minNumber, maxNumber, countryCode);
},
)),
),
);
} }
我想你可以试试这个 package: https://pub.dev/packages/flutter_otp
还有很多网站提供 OTP SMS 服务。
提示:您甚至可以使用 Firebase Auth,因为它也适合您的情况。
在 firebase 中,您可以像这样链接(类似于合并)使用 Email 和电话创建的帐户emailUser.getCurrentUser().linkWithCredential(phoneUserCredential)
在这种情况下,您的应用程序将包含一个用户,该用户具有该 Email 和电话。
额外的好处是您不想将电话号码存储在单独的数据库中。
链接两个帐户后,您只需使用user.displayName
和user.phoneNumber
即可获取您的 Email 和电话。
参考:
https://firebase.google.com/docs/auth/android/account-linking
https://firebase.google.com/docs/auth/web/account-linking
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.