比如我的应用名称是酒店管理 OTP是 "543255 是您用于 hotel-management.firebaseapp.com 的验证码。"
并且该应用程序处于 Debug模式,因此根据 firebase 文档,您应该只能获得类似 “543255 是您的验证码。”的 otp。
现在的问题是当用户收到code时onVerificationCompleted方法没有执行,因此需要手动输入OTP。我进行了大量搜索和研究,发现 SMS 模板起着重要作用,但就我而言,这是错误的。如何获取正确的应用名称?
在此先感谢您提供的任何帮助😎
注意:我使用的是最新版本的 firebase auth。
最佳答案
这不是错误的应用程序名称,而是您的 firebase PROJECT_URL。要确认转到 firebase 控制台,然后项目设置检查您的项目 ID 和您的项目 URL 是:Project ID.firebaseapp.com
我遇到了同样的问题,所以在做了一些研究之后我发现了这些原因:
- 如果您的设备没有安装播放服务。
- 如果您的设备引导加载程序已解锁或您的设备已完全 root。
- 它可能与使用 reCAPTCHA 验证程序流程有关。 Firebase 使用此流程来防止滥用,例如通过确保电话号码验证请求来自您的应用允许的域之一。
- %PROJECT_URL% 仅在显示 reCAPTCHA 时使用。为了避免这个问题,实现 SafetyNet,避免 reCaptcha。
要实现 safetyNet,请检查这些链接:
关于java - 从 firebase 在 auth OTP 中获取错误的应用程序名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66107742/