Facebook登录报错:将你登入到此应用程序时出错,请稍后再试。
这里帖几个有解决问题指导方向的连接:
- stackoverflow “Login Error: There is an error in logging you into this application. Please try again later”
- facebook login troubleshoot
- facebook 关于Login Error: There is an error in logging you into this application. Please try again later. 的讨论帖子
总结一下就是facebook sdk的bug,需要你更新一下hash key。
华丽的分割线…
真希望你这样就能解决问题了,如果没有请继续往下看。
首先确定一下你的接入的姿势是否正确???
这里有一个官方demo。
注意一下,需要关注onActivityResult方法的实现。
不巧我遇到的问题都不是这样解决,解决方法是
提供的com.facebook.sdk.ApplicationId 有误,准确的说我们提供是正确的id,但是facebook获取的时候是错误的
我的环境是:
- gradle:3.3.2
- minSdkVersion 15
- targetSdkVersion 28
- facebook sdk:4.19.0
先描述一下我遇到的问题。
- facebook能正常初始化
- 可以看到facebook登录窗口
- 输入错误的账号密码会提示
- 输入正确账号密码则提示:“将你登入到此应用程序时出错,请稍后再试”
- adb log 看到 facebook提示没有任何报错
- 能执行登录回调中的onCancel方法,却不能执行onSuceess、onError方法
先看一下,因为我是android小白,看不错AndroidManifest.xml中这三个代码的区别
代码1:
// AndroidManifest.xml <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id" /> // strings.xml <string name="app_id">355198514515820</string>
代码2:
// AndroidManifest.xml <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="355198514515820" />
代码3:
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="\ 355198514515820" />
代码1的配置是正确的,代码2初始化失败,代码3的配置导致了我遇到的问题。
如果你不能使用代码1的配置,需要像代码3那样配置。可以用这种方式
<meta-data android:name="com.facebook.sdk.ApplicationId" // 加上\u003 android:value="\u003355198514515820" />
这个连接可以告诉你原因,Crash after “Application ID ( 232323232323) must be a numeric value.” #2013
好的,我的问题解决,在此记录一下,希望能帮到你。