"This app is not authorized to use Firebase Authentication" in Emulator 在模拟器中,该应用未被授权使用Firebase身份验证。

11 浏览
0 Comments

"This app is not authorized to use Firebase Authentication" in Emulator 在模拟器中,该应用未被授权使用Firebase身份验证。

我在模拟器上运行我的应用程序时遇到了这个错误。\n我已经做了以下工作:\n

    \n

  1. 我正在使用Firebase-UI并运行Android O
  2. \n

  3. 我已经更新了Play Store。
  4. \n

  5. 我已经将所有的SHA-1代码添加到Firebase控制台,并且包名匹配。
  6. \n

\n实际上,当我在真实设备上运行应用程序时,它运行得很完美,我可以登录。\n

此应用程序未获得使用Firebase身份验证的授权。请验证Firebase控制台中是否配置了正确的包名和SHA-1。
com.google.firebase.auth.FirebaseAuthException: 此应用程序未获得使用Firebase身份验证的授权。请验证Firebase控制台中是否配置了正确的包名和SHA-1。[应用验证失败。应用程序是否在物理设备上运行?]
 at com.google.android.gms.internal.jz.zzK(Unknown Source:239)
 at com.google.android.gms.internal.kp.zza(Unknown Source:2)
 at com.google.android.gms.internal.kq.run(Unknown Source:37)
 at android.os.Handler.handleCallback(Handler.java:789)
 at android.os.Handler.dispatchMessage(Handler.java:98)
 at android.os.Looper.loop(Looper.java:164)
 at android.app.ActivityThread.main(ActivityThread.java:6541)
 at java.lang.reflect.Method.invoke(Native Method)
 at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

0
0 Comments

原因:Firebase Authentication的文档明确指出,使用电话号码登录需要使用物理设备,不能在模拟器上运行。

解决方法:根据Prasanna Anbu的回答,可以在模拟器上使用测试电话号码进行测试。

以下是整理后的文章:

在使用Firebase Authentication时,有用户报告了一个错误:“This app is not authorized to use Firebase Authentication” in Emulator。通过查看相关的GitHub问题链接,发现这是一个已经被记录的错误(https://github.com/firebase/FirebaseUI-Android/issues/790 和 https://github.com/firebase/FirebaseUI-Android/issues/868)。

根据Firebase Authentication的文档,为了防止滥用,无法在模拟器上使用电话号码验证(https://firebase.google.com/docs/auth/android/phone-auth#before-you-begin)。文档中明确指出:“Also, note that phone number sign-in requires a physical device and won't work on an emulator.”

有用户提问是否有办法在模拟器上运行电话号码验证,Prasanna Anbu的回答指出可以使用模拟器上的测试电话号码进行测试。

这个解决方法帮助了很多用户节省了时间,其他解决方法似乎都没有起作用。感谢Prasanna Anbu的回答。

出现“This app is not authorized to use Firebase Authentication” in Emulator错误的原因是Firebase Authentication不允许在模拟器上使用电话号码验证,解决方法是使用模拟器上的测试电话号码进行测试。

0
0 Comments

在Android Studio中生成SHA1密钥:

1. 从右侧面板中选择Gradle。

2. 选择你的应用程序。

3. 在任务中找到android -> signingReport。

4. 双击signingReport。

5. 在"Gradle控制台"中找到SHA1指纹。

6. 在Firebase控制台中添加这个SHA1指纹。

"这个应用程序未经授权使用Firebase身份验证"问题的原因可能是没有在Firebase控制台中添加正确的SHA1指纹。解决方法是按照上述步骤生成SHA1指纹,并将其添加到Firebase控制台。

效果很好!谢谢:)

谢谢!我在使用设备进行测试时遇到了这个错误,这是我找到的唯一解决方法:FirebaseUiException: 在尝试获取您的包证书哈希时出错。

如果在Gradle中找不到任务:stackoverflow.com/a/67493124/1540350

0
0 Comments

在模拟器中,“这个应用程序未被授权使用Firebase身份验证”错误出现的原因是为了防止滥用,Firebase电话验证不会在模拟器中工作。

但是,如果您希望进行测试,您可以在Firebase控制台中添加一些用于测试目的的电话号码,这将在模拟器中起作用。

请转到Firebase控制台 -> 身份验证 -> 登录方式 -> 电话,然后检查“测试用电话号码(可选)”字段。

[image](https://i.stack.imgur.com/uyBSp.png)

我在使用该界面添加测试电话号码时遇到了“添加测试电话号码错误”的通用错误。

确保您添加的电话号码之前没有被登录/注册。如果该号码已在身份验证中存在,则无法将其添加为测试账户。

非常感谢这个答案,它解决了我的问题。

0