0

我正在使用 Facebook SDK 3.0.2 通过我的应用程序在 facebook 上共享一个简单的 URL。我没有使用 Fragments,而是在 tabhost 中使用 ActivityGroup。我想从活动组内的活动中分享。下面是我用来启动会话的代码:

Session.openActiveSession(activity, true, new Session.StatusCallback()
        {
            // callback when session changes state
            public void call(final Session session, SessionState state, Exception exception)
            {

                if (session.isOpened())
                {
                    publishFeedDialog(name, caption, description, link, urlPicture, listenerShareFacebook);
                } else {
                    AlAinZooUtils.LOG("----- Session not opened in Manager ------ "+state);
                    if(exception != null) {
                        AlAinZooUtils.LOG("----- exception in opening the session ------ "+exception.getMessage());
                        listenerShareFacebook.onShareFacebookFailure(exception.getMessage());
                    }
                }

            }
        }

我面临的问题是会话永远不会返回 OPENED。它总是显示 OPENING 并冻结。也没有抛出异常。我不知道问题可能是什么。

我还覆盖了活动和父活动中的 onActivityResult 方法,但它也没有被调用。请指导我让它工作。

4

1 回答 1

4

不要忘记添加 onActivityResult 方法

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
}
于 2013-08-07T08:45:40.460 回答