我正在使用Firebase的“使用内置UI登录”功能通过Google和Facebook帐户登录。 Google帐户运行正常。 当我尝试使用Facebook帐户选项时,
未安装Facebook应用程序的设备:登录到Facebook的弹出窗口打开,登录后,显示我的Facebook应用程序的授权,当我授权fb应用程序使用我的帐户详细信息时,弹出窗口将关闭, firebase登录UI页面再次显示。此阶段显示一个不确定的进度条,并且该进度条一直在进行,没有任何反应。
安装了Facebook应用的设备:Facebook应用已打开,并且不显示授权提示。而是显示“登录错误:将您登录到此应用程序时出错”
到目前为止,我已经完成了以下操作
在我的Firebase控制台中启用了Facebook登录
输入的应用ID和应用机密
在fb应用设置中从Firebase控制台输入了OAuth重定向
为应用程序中的firebase和facebook sdk添加了依赖项
已添加
<string name="facebook_application_id" translatable="false">YOUR_APP_ID</string>
<string name="facebook_login_protocol_scheme" translatable="false">fbYOUR_APP_ID</string>
在strings.xml中
在fb应用程序设置中输入了正确的调试和释放键哈希值
在fb应用程序设置中输入正确的软件包名称
客户端OAuth登录,Web OAuth登录,强制HTTPS,嵌入式浏览器OAuth登录,对重定向URI使用严格模式-在fb应用程序设置中已打开
应用程序状态为“在线”
某些代码:
依赖项
implementation 'com.google.firebase:firebase-auth:17.0.0'
implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
implementation 'com.facebook.android:facebook-android-sdk:[5,6)'
登录界面调用
btnSignIn.onClick {
startActivityForResult(
AuthUI.getInstance()
.createSignInIntentBuilder()
.setIsSmartLockEnabled(false)
.setAvailableProviders(
arrayListOf(
AuthUI.IdpConfig.FacebookBuilder().build(),
AuthUI.IdpConfig.GoogleBuilder().build()
)
).setLogo(R.mipmap.ic_launcher)
.build(),
RC_FIREBASE_SIGN_IN
)
}
Google sigin会显示不确定的进度条一段时间,然后返回包含上述代码的页面,一切都会按预期进行。 FB登录不会从Firebase用户界面返回。 为什么fb登录不起作用?我在这里想念东西还是做错了什么?
答案 0 :(得分:3)
答案 1 :(得分:0)
我有同样的问题。我的解决方案是单独设置FB SDK。我在FB中注册了App,也不要忘记清单。这是分步教程。
https://developers.facebook.com/docs/facebook-login/android/