以编程方式Facebook登录Android(Session.isOpened始终返回false)

时间:2013-04-18 23:31:31

标签: android android-facebook

我遇到了以编程方式登录的问题,并且在登录后,当我希望用户发布某些内容时,当我检查isOpened()的acdtive会话时,它返回false,因此我无法发出任何请求...

这是登录代码:

public void login()
{
    Session session = Session.getActiveSession();

    if (session == null) 
    {
        session = new Session.Builder(ResourceManager.getInstance().getMainActivity()).build();
        Session.setActiveSession(session);
    }

    if (!session.isOpened()) 
    {
        Session.OpenRequest openRequest = new Session.OpenRequest(ResourceManager.getInstance().getMainActivity());
        openRequest.setPermissions(PERMISSIONS);
        openRequest.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
        session.openForPublish(openRequest);
    }
}

以下是我检查是否可以使用会话的代码:

public void post()
{
    Session session = Session.getActiveSession();
    if (session != null) 
    {
        // This returns always false, so it never goes in...
        if (session.isOpened())
        {
            postStatus(String pStatus);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

尝试检查您之前在Facebook中设置的键值。 错误地集成键值或任何设置会使facebook功能变得奇怪或返回意外结果。

此处的情况相同:post