【发布时间】:2020-04-17 14:33:27
【问题描述】:
我不认为这是特定于平台的,但我正在 Flutter 应用中实现 Firebase 电话身份验证,我不确定如何检测到有人输入了无效的 SMS 代码。在Firebase.instance 的verifyPhoneNumber() 方法的范围内,我在哪里可以检测到这个?这会在verificationFailed() 回调中处理,还是在我们尝试使用signInWithCredential() 登录并且失败之前我们不会知道?
--编辑--
经过进一步调查,似乎不会抛出异常,唯一会发生的事情是signInWithCredential() 将返回一个空的user 对象。我能想到的最好的解决方案就是等待 5 秒(或什么),看看我们是否得到一个非空的user。有人有更好的想法吗?
另外,请注意,我的开发设备没有单元连接,因此我通过 Firebase 控制台使用了一个虚假的测试编号。这意味着不会调用verificationCompleted() 回调,而是调用codeAutoRetrievalTimeout(),从而强制手动输入短信代码。希望能提供一些更好的背景。
【问题讨论】:
标签: firebase flutter firebase-authentication