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);
},
)),
),
);
}
}
2条答案
按热度按时间tjjdgumg1#
(目前该软件包已过期,不支持空值安全)。
你可以尝试flutter_otp包,我认为这是最好的选择,访问flutter_otp 0.3.2了解更多信息。
试试下面的例子
0lvr5msh2#
你可以试试这个包:https://pub.dev/packages/flutter_otp
也有很多网站提供OTP SMS服务。
**提示:**您甚至可以使用Firebase Auth,因为它也适合您的情况。
在firebase中,您可以使用
emailUser.getCurrentUser().linkWithCredential(phoneUserCredential)
链接(类似于合并)通过电子邮件和电话创建的帐户在这种情况下,您的应用将包含一个具有该电子邮件和电话的用户。
额外的好处是,你不想存储电话号码在一个单独的数据库。
链接两个帐户后,您只需使用
user.displayName
和user.phoneNumber
来获取您的电子邮件和电话。参考:
https://firebase.google.com/docs/auth/android/account-linking
https://firebase.google.com/docs/auth/web/account-linking