1

我有一个viewpager 和ActionBarSherlock。在操作栏的菜单中,我放置了一个“登录”按钮,将我带到登录屏幕(这与教程中的相同)。此登录工作正常,每次打开应用程序时,我都不需要再次登录。我想要的是在会话打开时将此“登录”菜单项更改为“注销”。但会话始终为空。不是会话的状态,而是会话本身。为什么?

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

   } else {
      publishStory();
   }

我在这里想念什么?我是否需要一些其他代码,或者这是否足够?

4

1 回答 1

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

于 2013-08-11T18:39:21.193 回答