2012-11-07 10 views
5

Więc mam prosty przycisk logowania, który robi to w moim onCreate:Android SDK v3.0 Facebook SSO LoginButton powrocie null GraphUser

mLoginButton = (LoginButton)findViewById(R.id.connect_facebook_button); 
    mLoginButton.setApplicationId(.getResources().getString(R.string.app_id)); 
    mLoginButton.setUserInfoChangedCallback(new LoginButton.UserInfoChangedCallback() { 
     public void onUserInfoFetched(GraphUser user) { 
      setUser(user); // Just sets mUser to be this user 
      try { 
      Toast.makeText(this, mUser.getFirstName(), Toast.LENGTH_SHORT).show(); 
      } catch (Exception FacebookException) { 
       FacebookException.printStackTrace(); 
      } 


     } 
    }); 

Wszystko to nazywa się pomyślnie, w tym onUserInfoFetched.

Problem polega na tym, że w każdym przypadku mój użytkownik Graphuser ma wartość NULL.

Moja identyfikacja aplikacji jest poprawna, mój android hash to debugowany, który mi dali (testowany na przykładowych aplikacjach działał bez zarzutu), ekran logowania rzeczywiście pojawia się ... Nie jestem pewien, gdzie się stąd wybrać.

Ponadto, jeśli uderzę dwukrotnie przycisk, pojawia się błąd:

an attempt was made to open a session that has a pending request 
+0

Kod wygląda dobrze i mogę uzyskać informacje GraphUser, gdy używam Twojego kodu. Czy HelloFacebookSample działa dla Ciebie, w tym sensie, że widzisz informacje zalogowanego użytkownika? –

Odpowiedz

6

Ups! Nie pamiętam wyniku mojej aktywności!

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
} 

To wystarczyło.

+0

Jaka jest różnica, gdy zastępujesz metodę i wywołujesz tylko metodę bazową ??? –

+0

W tym przypadku super jest Facebook onActivityResult, a nie własny. – VicVu

+0

@Vee Skąd wiadomo, czy jest to facebook czy fragment? – offset

Powiązane problemy