我正在使用FB-android-SDK 3.0。在单点登录时,如果我在FB应用程序的Facebook登录页面上按返回按钮,则会生成异常。这是堆栈跟踪。
01-11 22:35:07.146: E/AndroidRuntime(13076): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=64206, result=0, data=null} to activity {com.nitinbansal85.android.testfacebook1/com.facebook.LoginActivity}: java.lang.NullPointerException
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.ActivityThread.deliverResults(ActivityThread.java:3386)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3428)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.ActivityThread.access$2700(ActivityThread.java:125)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1944)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.os.Handler.dispatchMessage(Handler.java:99)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.os.Looper.loop(Looper.java:123)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.ActivityThread.main(ActivityThread.java:4420)
01-11 22:35:07.146: E/AndroidRuntime(13076): at java.lang.reflect.Method.invokeNative(Native Method)
01-11 22:35:07.146: E/AndroidRuntime(13076): at java.lang.reflect.Method.invoke(Method.java:521)
01-11 22:35:07.146: E/AndroidRuntime(13076): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924)
01-11 22:35:07.146: E/AndroidRuntime(13076): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:682)
01-11 22:35:07.146: E/AndroidRuntime(13076): at dalvik.system.NativeStart.main(Native Method)
01-11 22:35:07.146: E/AndroidRuntime(13076): Caused by: java.lang.NullPointerException
01-11 22:35:07.146: E/AndroidRuntime(13076): at com.facebook.AuthorizationClient$KatanaProxyAuthHandler.onActivityResult(AuthorizationClient.java:645)
01-11 22:35:07.146: E/AndroidRuntime(13076): at com.facebook.AuthorizationClient.onActivityResult(AuthorizationClient.java:142)
01-11 22:35:07.146: E/AndroidRuntime(13076): at com.facebook.LoginActivity.onActivityResult(LoginActivity.java:134)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.Activity.dispatchActivityResult(Activity.java:3828)
01-11 22:35:07.146: E/AndroidRuntime(13076): at android.app.ActivityThread.deliverResults(ActivityThread.java:3382)
我已经将执行SSO的代码包装在
FacebookOperationCanceledException
中,但是没有抛出。我在这里想念什么吗?
编辑:该应用程序崩溃!
最佳答案
这是一个已报告的错误:facebook bug report
这是我的解决方法:
String errorMessage = "Login cancelled!";
if(data != null && data.getStringExtra("error") != null)
{
errorMessage = data.getStringExtra("error");
}
outcome = Result.createCancelResult(errorMessage );
您可以在645行的AuthorizationClient.java中进行这些修改
关于facebook-android-sdk - 在Facebook登录后按回车时的异常(exception),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14283421/