2

所以我是 android 开发的新手(这并不意味着我不理解其他人的代码,只是实践经验)并且目前正在开发一个 android 应用程序。该应用程序是由之前离开我最近被聘用的工作的人制作的。问题是,由于谷歌已经更新了他们的政策,不允许我们使用 READ_SMS 和 RECEIVE_SMS 等权限,前人制作的应用程序没有被谷歌批准上传到 Play 商店。

我的问题是,有什么方法可以用 SMS 检索器 API 替换 firebase 身份验证,但最后使用 firebase?或者有没有其他方法可以根据firebase发送的OTP对用户进行身份验证,但没有RECEIVE_SMS或READ_SMS的权限?

目前,我已经检查了 SMS Retriever 并且似乎适合我们的应用程序,但不知道我们是否仍然可以继续使用 firebase。

4

2 回答 2

4

您真的不需要 Android 上的 Firebase Auth 的 SMS 检索器 API。它将自动读取 SMS 代码并初始化 PhoneAuthCredential 并通过onVerificationCompleted回调传递它以完成登录。

“自动检索:在某些设备上,Google Play 服务可以自动检测传入的验证短信并在无需用户操作的情况下执行验证。(某些运营商可能不提供此功能。)”

您还可以在不发送短信的情况下获得即时验证的好处。

您可以查看官方文档以了解更多信息。

于 2019-08-06T03:28:08.560 回答
0

如果您想使用 Firebase 身份验证作为您的用户的注册表,那么您可以使用安全规则并与其他 Firebase 产品集成,但想要提供您自己的机制来创建和验证这些用户,您将不得不实现一个自定义身份验证提供程序。这要求您提供自己的后端来安全地完成所有身份验证工作。您将无法信任客户端应用程序(即使您编写了整个内容,因为它可能会受到损害)足够安全以真正验证最终用户的声明。

整个过程在单个 Stack Overflow 答案中无法解释,因此请阅读文档以了解自定义身份验证的工作原理。

于 2019-08-05T21:14:25.813 回答