在一个请求中获取读取和发布权限

bac*_*113 20 android facebook facebook-android-sdk android-facebook

在你们都说不可能之前,打开Spotify应用程序并用Facebook按钮点击登录.

我想知道他们是如何做到的,以及如何在一个请求中获得"publish_stream"和基本权限/电子邮件.

另外,如果我从上次会话中获得某些信息(他们上次使用该应用程序时),我是否可以使用Facebook SDK重新开启Facebook会话?

编辑 -SCREENSHOTS以下为音乐AVERT

Spotify魔术

Vij*_*jay 20

您在Spotify上看到的并不是结果.publish_stream他们使用的是Open Graph

开放图形概念涉及将应用程序的操作与FB活动帖子集成,并通过他们使用的应用程序与用户共享.在上面提到的链接中阅读更多相关信息.


编辑说明: 检查"打开图"权限

活动范例:

public class MainActivity extends Activity implements StatusCallback {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        OpenRequest open = new OpenRequest(this);
        open.setLoginBehavior(SessionLoginBehavior.SUPPRESS_SSO);
        open.setPermissions(Arrays.asList(new String[]{"email", "publish_actions", "user_birthday", "user_hometown"}));
        open.setCallback(this);
        Session s = new Session(this);
        s.openForPublish(open);
    }

    @Override
    public void call(Session session, SessionState state, Exception exception) {
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(Session.getActiveSession()!=null)
            Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
    }
}
Run Code Online (Sandbox Code Playgroud)

此活动将显示此信息(如果用户未登录):

在此输入图像描述