我在我的Android应用程序中使用firebase登录到facebook后出现此错误。
身份验证失败:com.google.firebase.FirebaseExeption:发生了内部错误。
包名称和签名证书指纹不匹配。
我的firebase控制台中有一个sha指纹和正确的包名。 我已将应用程序上传到Beta测试,我认为我需要一个释放sha键。但我不知道如何创建它。
任何帮助?
答案 0 :(得分:1)
我找到了答案。
我不得不使用这个命令:
keytool -exportcert -alias androiddebugkey -keystore ~/YOUR/PATH/TO/KEYSTORE -list -v
并在我的项目中将KEYSTORE路径设置为 .jdk 文件。
(创建签名APK时会生成.jdk文件)
我是这样做的
<强>说明:强>
首先:在终端窗口(Mac)中键入此内容以生成debug.keystore
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
我建议不要改变别名。
使用“android”作为密码。
将debug.keystore文件保留在.android文件夹
第二:在我们检索要发布的哈希密钥之前,我们需要创建一个 .jdk 文件。您可以通过Android Studio执行此操作 - &gt; “构建”-tab - &gt; “生成签名APK”。或者,如果您正在开发 Cordova应用,可以在项目目录中输入 .jdk 来创建 .jdk 文件:
keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-alias
创建.jdk文件后,您可以为Facebook创建发布哈希。
第三次:在终端输入:
keytool -exportcert -alias YOUR_RELEASE_KEY_ALIAS -keystore YOUR_RELEASE_KEY_PATH | openssl sha1 -binary | openssl base64
将 YOUR_RELEASE_KEY_ALIAS 更改为您给 .jdk文件的别名,并将“ YOUR_RELEASE_KEY_PATH ”设置为 .jdk文件。这样的事情:〜/ apps / myApp / myApp.jdk
最后它可能如下所示:
keytool -exportcert -alias myApp -keystore ~/apps/myApp/myApp.jdk | openssl sha1 -binary | openssl base64