我有恼人的问题与登录通过Facebook的额外share_item权限。 我的代码登录:Android Facebook登录:ApiException:无法提供share_item的描述
public void startFacebookLogin() {
Session localSession = Session.getActiveSession();
if ((!localSession.isOpened()) && (!localSession.isClosed())) {
Session.OpenRequest localOpenRequest = new Session.OpenRequest(this);
localOpenRequest.setCallback(this);
localOpenRequest.setDefaultAudience(SessionDefaultAudience.EVERYONE);
localOpenRequest.setPermissions("email", "share_item");
localSession.openForRead(localOpenRequest);
return;
}
Session.openActiveSession(this, true, this);
}
和代码来获取会话登录响应:
@Override
public void call(Session session, SessionState state, Exception exception) {
onSessionStateChange(session, state, exception);
if(state == SessionState.OPENED) {
String facebookToken = session.getAccessToken();
processFacebookToken(facebookToken);
}
}
问题是,当我打电话startFacebookLoging()第一次,在梅托德通话状态为“CLOSED_LOGIN_FAILED”和异常是:
com.facebook.FacebookAuthorizationException: UnknownError: ApiException:Cannot provide description for share_item
当startFacebookLoing()被调用第二次的Facebook SDK显示“请求的权限对话框”,而只是要求“basic_inf o“,在accept()中的状态为”OPENED“之后,没有例外但是权限”email“和”share_item“不会附加到会话中。我在Facebook SDK 3.6和3.8上测试了它。
任何想法是什么错?我试图在谷歌中发现“UnknownError:ApiException:无法提供share_item的描述”,但没有任何有趣的结果。
你把hashcode放在facebook开发者页面上吗? –
当然可以。无论如何,没有share_item权限的登录工作正常。 – yaneq6