当前位置: 首页 > 知识库问答 >
问题:

Firebase电话验证SHA-1指纹问题

邰钟展
2023-03-14

我已经使用电话认证在Flatter中创建了一个登录页面。其中我得到了错误:

E/FirebaseAuth(21546):[SmsRetrieverHelper]SMS验证代码请求失败:未知状态代码:17028传递了安全令牌,但在Firebase控制台中未注册匹配的SHA-256。请确保此应用程序的packageName/SHA256对已在Firebase控制台中注册。I/flatter(21546):此应用程序无权使用Firebase身份验证。请验证Firebase控制台中是否配置了正确的包名和SHA-1。[已传递安全\u net\u令牌,但Firebase控制台中未注册匹配的SHA-256。请确保此应用程序的packageName/SHA256对已在Firebase控制台中注册。]

我已经通过使用以下步骤从cmd中获取了SHA1和SHA256密钥:

  1. 在cmd中,访问了安装java jdk的路径(在我的示例中:C:\Program Files\java\jdk1.8.0\U 212)
  2. 然后粘贴以下命令并点击enterkeytool-list-v-keystore“C:\Users\Mehul Jain.android\debug.keystore”-别名androiddebugkey-storepassandroid-keypassandroid

之后,我得到了屏幕截图所示的钥匙。

应用程序工作正常。当我尝试通过测试模式登录(即输入手机号码和otp)并使用测试模式详细信息运行应用程序时,应用程序100%正常工作。但是如果我想从应用程序中添加手机号码并尝试获取短信,屏幕上会出现错误。我尝试过其他各种手机号码,但仍然无法使用(手机号码未在测试模式下输入)。

共有2个答案

左丘繁
2023-03-14

我建议您使用这个免费的库OTP_验证API,我也尝试过这个,它是有史以来最简单的API。

卜和悌
2023-03-14
  • 如果您正在使用emulator,则安全网将失败,请确保您使用的是合法的Android设备
  • 您可能使用了错误的密钥库。确定调试SHA密钥的最佳方法是Gradle
 类似资料:
  • 获得SHA-1指纹的方法与获得指纹的方法相同吗?以前,我运行的是以下命令: 我不清楚我得到的结果是不是SHA-1指纹。有人能澄清一下吗?

  • 我知道我们不能更改电子邮件验证模板或短信验证模板。 我已经设置了公共名称,它一直工作到日期。但是今天我得到了另一个文本而不是那个名称的OTP。 123345是你的验证码。egad5adfe/g 最后一个词egad5adfe/g是什么,为什么它代替了面向公众的名称? 最近几天我什么都没变。我不知道为什么会这样。有人能帮忙吗?

  • keytool-list-v-keystore my_keystore.jks

  • 我试图用手机登录。每次我输入手机号码时,它都会显示这些错误消息并退出应用程序。我使用了https://firebase.flutter.dev/docs/auth/phone留档中的代码。代码几乎与留档相同。 我正在为Java/Flatter/Firebase sdk等所有东西使用更新版本。我还在Firebase应用程序中添加了SHA1密钥,并启用了手机认证。我还尝试了物理和虚拟设备。但每次都是同

  • 但我有以下错误 {“错误”:{“代码”:403,“消息”:“来自此ios客户端应用程序的请求被阻止。”,“错误”:[{“消息”:“来自此ios客户端应用程序的请求被阻止。”,“域”:“全局”,“原因”:“禁止”}],“状态”:“允许_Denied”}} 我已经实现了这一点,正如文档中所示。 下面是AppDelegate.swift的代码: 下面是ViewController.swift的代码:

  • 我想在银行项目中通过android平板电脑记录客户数据,包括指纹。当客户存款或取款时,会通过指纹数据核实哪个客户。Android设备记录指纹数据并与Web服务器(asp.net)同步。那么,开发指纹验证的最佳方法是什么?如果指纹设备与Android平板电脑连接更容易,请建议我。