2013-08-11 2 views
1

У меня есть viewpager и ActionBarSherlock. В меню панели действий я разместил кнопку «Вход», которая приведет меня к экрану входа (это то же самое, что и в tutorial). Этот вход работает отлично, каждый раз, когда я открываю приложение, мне больше не нужно входить в систему. Я хочу изменить этот пункт меню «Войти» в «Выход из системы», когда сеанс открыт. Но сеанс довольно нулевой. Не состояние сеанса, но сам сеанс. Зачем?Facebook для Android 3.0 Поддержание сеанса

Session session = Session.getActiveSession(); 
    if (session == null) { 

    } else { 
     publishStory(); 
    } 

Что мне здесь не хватает? Нужен ли мне какой-то другой код, или этого должно быть достаточно?

+0

Вы уверены, что открыт сеанс? Можете ли вы поместить журнал на свой экран входа в систему и проверить состояние сеанса? –

+0

Я не могу проверить состояние сеанса, так как я набираю силу, потому что сеанс равен нулю. – erdomester

+0

Я имел в виду, что вы проверяете состояние сеанса на экране входа в систему –

ответ

2

Потому что вам нужно открыть активный сеанс, прежде чем вы сможете написать Session.getActiveSession(). И не забудьте определить session снаружи:

Session.openActiveSession(getActivity(), true, new StatusCallback() { 

       @Override 
       public void call(Session session, SessionState state, Exception exception) { 
       } 
      }); 
session = Session.getActiveSession(); 

Вы можете узнать больше о связанных openActiveSession методом здесь:

https://developers.facebook.com/docs/reference/android/current/Session