Android Facebook реализует единый вход

#android #facebook #single-sign-on

#Android #Facebook #единый вход

Вопрос:

Я хочу реализовать Facebook Connect в своем приложении для Android. Я видел несколько приложений, таких как foursquare, которые при нажатии кнопки входа в Facebook переходят к приложению Facebook, установленному на устройстве, и запрашивают разрешение, а после его предоставления возвращаются в приложение и регистрируют вас.

Я попытался реализовать код со следующей страницы https://developers.facebook.com/docs/mobile/android/sso /

но когда я нажимаю войти, появляется диалоговое окно веб-просмотра, и мне нужно ввести имя пользователя и пароль.

Может ли кто-нибудь сослаться на какой-нибудь учебник по SSO для Facebook Android SDK

 public class SplashActivity extends Activity {

    private Button loginButton, signupButton, FacebookButton;

    public static final String APP_ID = "11232201730";
    Facebook facebook = new Facebook("APP_ID");

    String[] permissions = { "user_about_me", "email", "user_birthday",
            "user_location", "publish_stream" };

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);

        FacebookButton = (Button) findViewById(R.id.FacebookLogin);
        FacebookButton.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {

                facebook.authorize(this, new Facebook.DialogListener() {

                    public void onFacebookError(FacebookError e) {
                        // TODO Auto-generated method stub

                    }

                    public void onError(DialogError e) {
                        // TODO Auto-generated method stub

                    }

                    public void onComplete(Bundle values) {
                        // TODO Auto-generated method stub

                    }

                    public void onCancel() {
                        // TODO Auto-generated method stub

                    }
                });


            }
        });

    }
}
 

Ошибка

Метод авторизации (Activity, Facebook.DialogListener) в типе Facebook не применим для аргументов (новый вид.OnClickListener(){}, новый Facebook.DialogListener(){})

Комментарии:

1. Вы когда-нибудь использовали Facebook SDK?

2. это первый раз, когда я это пробую..

3. К вашему сведению, Facebook удаляет этот код. Итак, переключитесь на автоматическое управление сеансами SDK 3.0. Здесь вы можете начать: github.com/freakynit/facebook-android-sdk-3.0-small-playground

4. @NitinBansal спасибо. опубликовал этот вопрос в 2011 году: D

Ответ №1:

facebook.authorize(this, new Facebook.DialogListener()

должно быть

facebook.authorize(SpashActivity.this, new Facebook.DialogListener()

Комментарии:

1. спасибо 🙂 работает… когда у меня есть @override поверх внутренних методов .. я получаю эту ошибку «Метод onComplete (Bundle) типа new Facebook. DialogListener(){} должен переопределять метод суперкласса »