android - 如何在 Flutter 中进行 OTP 认证?
问题描述
我正在开发一个使用 Firebase 作为其后端的应用程序。目前,注册过程是使用谷歌电子邮件地址设置的,在下一个屏幕上,系统会提示用户输入他们的手机号码。
在下一步中,用户会收到一个发送到他们手机的 OTP,然后他输入该 OTP 以完成验证他们的电话号码。我检查了 Firebase 提供的电话身份验证,但在我的情况下,用户身份验证已经在第一步使用用户的 Google 电子邮件地址进行处理。
我已经使用这个包在 Android 上完成了这项工作:sms_maintained
但这在 iOS 中不起作用。请提出一种让它在 iOS 和 Android 上都可以工作的方法。感谢您的时间。
解决方案
作为一种更简洁的方法,我建议阅读以下内容:MSG91 OTP API。
请注意:这将适用于 Android 和 iOS,因为它是一个功能性 API,需要调用并完成工作:)
我会用更生动的方式告诉你:
- 这是一个 API,可帮助您使用发送 API 发送 OTP
- 它还可以帮助您验证 OTP,之后您可以继续
现在,你可以如何做到这一点:
>>> Make an account, and get your AUTH_KEYS which is necessary to get the API working
>>> After that, in your Dart app, generate your Random 4 or max supported digit OTP
>>> When you hit your button, or page which verifies the OTP, Send the OTP generated to the MSG91 Send API
>>> It will send you the OTP via SMS
>>> Use it to Verify, using Verify API
>>> Use the response coming from the API, to go back or show error
>>> And you're done
确保你阅读过http,一个 Flutter 包,它允许你调用 API。我希望这对你有意义,并帮助你实现你想要的。
例子:我能举出的最好的例子就是我自己。我已经在我的应用程序中使用了它,它就像魅力一样。它是功能性的,到目前为止我还没有发现任何问题。
推荐阅读
- python - 如何从同一个 flask-restplus 资源类获取和发布端点?
- php - 为什么不是 js / jquery 事件在 PHP foreach 中工作
- javascript - 如何在对象数组的内部嵌套中使用 groupid 包装组
- android - 如何使用 Firebase Cli 在当前项目中添加应用程序
- java - 在 Android Studio 中没有获得“导入模块”选项
- javascript - 如何使用 jQuery 的 $.post() 发送标头?
- java - 我可以使用定期计时器任务清理 Netty 的 ChannelHandler 中的地图值吗?
- laravel-5 - 如何使用迁移 laravel 为该特定类别产品名称设置唯一功能应该是唯一的?
- kubernetes - 使用 Helm 升级遇到失败似乎因为 configmap 限制超出
- sql - H2中通过PreparedStatement查询抛出异常:PreparedStatement不允许该方法;改用常规语句