Android Facebook SDK i metody URL tworzą udane okno dialogowe znajomych, ale nie mogą się zatwierdzić
To jest ten, który zaczynam uważać za błąd, proszę, udowodnij mi, że się mylę:
Chcę programowo zaprzyjaźnić się z użytkownikiem na Facebooku; są tylko i na pewno ktoś, kogo zna IRL.
Następujące trzy rozwiązania mają ten sam rezultat: okno dialogowe udanych przyjaciół - oznaczające nazwę profilu, obrazek, oświadczenie wskazujące akcję (aby kogoś zaprzyjaźnić) oraz przyciski odmowy / potwierdzenia; Naciśnięcie przycisku „Potwierdź” to problem: prowadzi do błędu Facebooka przedstawionego w standardowym interfejsie użytkownika fb, który mówi: „Przepraszam, coś poszło nie tak. Pracujemy nad tym, aby to naprawić jak najszybciej”. Mój użytkownik jest zalogowany, a identyfikator aplikacji fb (fb_app_id) jest złoty lub nie zostanie wywołana aktywność rodzica fragmentu, mój identyfikator użytkownika (Id) jest również złoty, co potwierdza zdjęcie profilowe pojawiające się zarówno w moja aplikacja iw oknie dialogowym znajomych akcja „przyjaciele /” jest poprawna - „znajomi /?” daje mi dobry błąd „nie znaleziono” - a OnCompleteListener działa dobrze nawet wokół wiadomości.
Pierwszy sposób to SDK, mój preferowany, jeśli zadziałał:
Bundle params = new Bundle( );
params.putString( "id", Id );
WebDialog requestsDialog = (
new WebDialog.Builder( this.getActivity( ),
getString( R.string.fb_app_id ),
"friends/", params )
.setOnCompleteListener( new CompleteListener( ) )
.build( ) );
requestsDialog.show( );
Zapisać jawne wywołanie akcji, które wygląda dobrze, prawda? Z pewnością prowadzi mnie do okna potwierdzenia; Drugi sposób jest szybki i brudny, ale powinien działać:
String requestUrl = "https://www.facebook.com/dialog/friends/?id="+
Id+"&app_id="+getString( R.string.fb_app_id )+
"&redirect_uri=http://www.facebook.com";
WebDialog requestDialog = new WebDialog( this.getActivity( ), requestUrl );
requestDialog.show( );
Ale tak nie jest; ten sam quasi-udany wynik. Trzecim sposobem było po prostu sprawdzenie, czy nie jestem idiotą, i zasadniczo jest to sugestia w tym pościeOkno dialogowe znajomych Facebook zwraca błąd „Nieznana metoda” ale z WebDialogs (moja implementacja OnCompleteListener) zamiast przestarzałej biblioteki. To samo, ta sama wiadomość.
To nie jest komunikat o błędzie, który jest / dla / mnie, wiesz? Czy to jest przestarzałe wywołanie interfejsu API? Czy komunikat o błędzie jest dosłownie poprawny, a dobrzy ludzie z fb są tego świadomi? Czy jest jakiś param, którego naprawdę brakuje mi tutaj? To nie tak, że nie są zalogowani! Jestem w pewnym sensie po mojej stronie, z góry dziękuję za pomoc / porady / uspokojenie słów. -AnB
P.S. „Zaprzyjaźniony” wygląda naprawdę zabawnie, kiedy go piszesz. AB