繁体   English   中英

我如何从最新的Facebook sdk-4.0.1获取用户信息

[英]How can i get user information from Latest Facebook sdk-4.0.1

我如何从最新的Facebook sdk-4.0.1获取用户信息,例如:

电子邮件-user_birthday-user_friends

注意:我使用LoginButton

    final LoginButton loginButton = (LoginButton) findViewById(R.id.login_button);
    loginButton.setReadPermissions("user_friends");
    loginButton.setReadPermissions("public_profile");
    loginButton.setReadPermissions("email");
    loginButton.setReadPermissions("user_birthday");

首先,可以在一行中设置权限:

loginButton.setReadPermissions(Arrays.asList("user_friends, public_profile, email, user_birthday"));

现在,考虑您以这种方式注册了回调:

    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) { }

        @Override
        public void onCancel() { }

        @Override
        public void onError(FacebookException exception) { }
    });

将此代码放在onSuccess()方法中:

        GraphRequest request = GraphRequest.newMeRequest( loginResult.getAccessToken(),
                new GraphRequest.GraphJSONObjectCallback() {
                    @Override
                    public void onCompleted( JSONObject object,  GraphResponse response) {
                        Log.d("onCompleted",object.toString());
                    }
                });
        Bundle parameters = new Bundle();
        parameters.putString("fields", "id,name,link, email");
        request.setParameters(parameters);
        request.executeAsync();

注意这一行:

parameters.putString("fields", "id,name,link, email");

...这些将是onCompleted()方法中JSONObject中返回的字段。

参考:

https://developers.facebook.com/docs/graph-api/using-graph-api/v2.3#reading https://developers.facebook.com/docs/graph-api/reference/user

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM