2012-03-15 29 views
5

buduję aplikację internetową, która może otworzyć na pełnym ekranie na iPhone i mam następujący kod Facebooku internetu mobilnego, który można znaleźć na stronie: https://developers.facebook.com/docs/guides/mobile/web/Pusty ekran z Mobile Web App i Facebook Connect

Kiedy próbuję aby zalogować się za pomocą strony logowania do Facebooka, po kliknięciu przycisku "Zaloguj się" pojawia się pusty biały ekran. Użytkownik jest jednak zalogowany. Wiem o tym, ponieważ po zamknięciu i ponownym otwarciu aplikacji internetowej sprawdzam stan logowania i próbuję uzyskać informacje o użytkowniku, i wszystko działa dobrze.

Widziałem innych z tym samym tutaj: blank white screen after FB login via web app?

Wydaje się, że ktoś zidentyfikował obejście, ale nie mogę zmusić go do pracy. Kod używam jest:

function loginUser() {  
    FB.login(function(response) { }, {scope:'email'});  
    } 

Inni wskazują, że muszę wykorzystać obejście tutaj:

login({scope:'email', redirect_uri:'where_to_go_when_login_ends'}) 

Czy ktoś wie jak połączyć te kawałki kodu, aby zmusić go do pracy?

Dzięki!

+0

jeśli korzystasz z aplikacji Facebook na telefonie do logowania spróbuj zamknąć całkowicie i spróbuj jeszcze raz, czasami widziałem, że się myli. – peterept

+0

Dzięki za odpowiedź peterept, to nie wydaje się być problemem. Nie jestem pewien, co się z tym dzieje. – Brandon

Odpowiedz

0

Spróbuj this, pracował dla mnie:

FB.login(function(response) { 
    //deal with response 
}, {scope:'permissions', redirect_uri:'url to redirect to'}); 
+1

Wierzę, że ta nieudokumentowana funkcja mogła zostać usunięta przez Facebooka. Używałem tego obejścia i ostatnio przestało działać dla mnie, pozostawiając mnie z pustym białym ekranie. Ta alternatywna metoda wydaje się działać na iPadzie1 z iOS5: http://stackoverflow.com/questions/11197668/fb-login-broken-flow-for-ios-webapp – Mike

1

Problem polega na tym, że normalnie otwiera okno logowania w oknie pop-up. Jednak w aplikacjach internetowych (iOS) nie jest to odpowiednio obsługiwane z jakiegoś powodu.

Poprzez zapewnienie normalnego odnośnik zamiast własnego skryptu logowania BTN FB, proces logowania pozostaje w tym samym oknie (w tym procesie przekierowania!)

Mam nadzieję, że to pomoże nikogo ...

<a href="https://www.facebook.com/dialog/oauth/?client_id=YOUR_APP_ID&redirect_uri=YOUR_REDIRECT_URL&state=YOUR_STATE_VALUE&scope=COMMA_SEPARATED_LIST_OF_PERMISSION_NAMES">LOGIN!</a> 
Powiązane problemy