2013-01-11 33 views
6

Im sử dụng FB-android-SDK 3.0. Trong khi SSO, nếu tôi nhấn nút quay lại trên trang đăng nhập facebook (của ứng dụng FB), một ngoại lệ được tạo ra. Đây là stacktrace.Ngoại lệ khi nhấn lại vào đăng nhập 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) 

Tôi đã bao gồm mã thực hiện SSO trong FacebookOperationCanceledException nhưng không được ném.

Tôi có thiếu gì đó ở đây không?

EDIT: Ứng dụng gặp sự cố!

Trả lời

13

Đây là một lỗi thông báo: facebook bug report

Dưới đây là cách giải quyết của tôi:

String errorMessage = "Login cancelled!"; 
      if(data != null && data.getStringExtra("error") != null) 
      { 
       errorMessage = data.getStringExtra("error"); 
      } 

outcome = Result.createCancelResult(errorMessage); 

Bạn làm những sửa đổi trong AuthorizationClient.java trong dòng 645

+0

Ohh cảm ơn @Emil sooo sooo nhiều. Nó rất cần thiết :-) –

+0

Cảm ơn bạn rất nhiều vì câu trả lời này, điều buồn cười vì điều này vẫn tồn tại gần một tháng sau đó. – Bryan

+0

Lỗi này vẫn còn đó và câu trả lời của bạn ở đây đã lưu trong ngày. Cảm ơn rất nhiều. –

4

lỗi này được cố định trong facebook-android -sdk-3.0.1. Tốt hơn để tải xuống và sử dụng nó. Đã làm cho tôi.

+0

thnx để kể ..... :) –

Các vấn đề liên quan