我正在使用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权限
答案 0 :(得分:1)
像Ming Li说的那样,在我要求发布权限之前,我要求获得basic_info权限是强制性的(安装了Facebook应用程序)。这个请求必须单独完成,按照我说的顺序(首先读取basic_info然后发布)。