Android: после обратного вызова из Facebook, какое государство будет вызывать мою основную деятельность? - PullRequest
1 голос
/ 02 сентября 2011

Я использую Facebook SDK в своем проекте Android, и в моей основной деятельности есть кнопка для Вход , нажав эту кнопку, пользователь войдет в Facebook, а обратный вызов вернется в Основное действие.

Все работает отлично.

Теперь я хочу, когда обратный вызов завершен, мне нужно изменить текст этой кнопки с входа в систему для выхода из системы ... как я могусделать это?

какое состояние будет вызываться из моей основной активности при обратном вызове .. я имею в виду onResume () или onRestart () или что ??

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

Я прочитал достаточно документации и учебного пособия для Android lifecyle ... но все равно я не смог найти способ сделать это.

Спасибо, Майур Парех

Ответы [ 2 ]

2 голосов
/ 02 сентября 2011

Итак, я предполагаю, что вы входите в Facebook, делая что-то вроде этого:

    mFacebook.authorize(this, null, requestCode, 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
        }
    });

Если аутентификация прошла успешно, на вашем DialogListener будет вызван метод onComplete(). Также на вашем Activity я предполагаю, что вызывается метод onResume(), но он будет вызываться при отклонении FacebookDialog, независимо от того, был ли логин успешным или нет.

1 голос
/ 03 сентября 2011
SessionEvents.AuthListener listener = new SessionEvents.AuthListener() {

                        public void onAuthSucceed() {
                            changeText("Facebook Logout");
                        }

                        public void onAuthFail(String error) {
                            Log.i("Login Failed", "Try Again");
                        }
                    };
                    SessionEvents.addAuthListener(listener);
                    facebookConnector.login();

Это то, что я сделал в своей основной деятельности в событии нажатия кнопки, это вызовет диалог Facebook для входа в систему, и если после того, как этот вход в систему завершится успешно, будет выполнено то же самое в случае сбоя входа.

Я использую FACEBOOK SDK по умолчанию в моем проекте.

...