2014-04-16 33 views
0

我有恼人的问题与登录通过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的描述”,但没有任何有趣的结果。

+0

你把hashcode放在facebook开发者页面上吗? –

+0

当然可以。无论如何,没有share_item权限的登录工作正常。 – yaneq6

回答

0

求助: 好的,问题解决了。 Gracious Facebook开发人员回应我说,share_item已被弃用,现在它不起作用(相反,您可以使用publish_stream或其他...)。但Facebook文档中没有关于这方面的任何信息,thx对于良好的支持FB ...