Android - 开放会话无法使用上一个Facebook应用版本

时间:2013-02-01 10:59:35

标签: android facebook

我正在使用Facebook的最后一个SDK来发布带有一些文本的图像,直到昨天它没问题,确实像我想的那样在设备上安装或不安装Facebook应用程序。但我更新了Facebook应用程序,现在它不适用于新版本的Facebook应用程序。我做错了什么?

这是我打开当前会话的代码:

Session session = Session.getActiveSession();
            if(session == null || session.isClosed()){
                //session = new Session(activity);
                session = new Session.Builder(activity).setApplicationId(ConstantsSoccerWay.FACEBOOK_API_KEY).build();
                Session.OpenRequest openRequest = new Session.OpenRequest(activity);
                openRequest.setPermissions(PERMISSIONS);
                openRequest.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK);
                session.openForPublish(openRequest);
                Session.setActiveSession(session);
                posting = true;
            }

当会话正在打开时,它会显示一个弹出窗口,询问用户是否要允许我的应用程序在他的墙上发布,但是当他按下OK按钮时,在回调“onSessionStateChange”上我的会话仍然关闭。

有人可以帮助我吗?

PS:我添加了publish_actions权限

1 个答案:

答案 0 :(得分:1)

像Ming Li说的那样,在我要求发布权限之前,我要求获得basic_info权限是强制性的(安装了Facebook应用程序)。这个请求必须单独完成,按照我说的顺序(首先读取basic_info然后发布)。