VansFannel
VansFannel

Reputation: 45911

Get Facebook user email using latest Facebook SDK

I'm developing an Android application, and I'm using this code to get some data from Facebook:

public void onFBLoginClick(View view)
{
    // start Facebook Login
    Session.openActiveSession(this, true, new Session.StatusCallback()
    {
        // callback when session changes state
        @Override
        public void call(final Session session, SessionState state, Exception exception)
        {
            if (session.isOpened())
            {
                // make request to the /me API
                Request.executeMeRequestAsync(session, new Request.GraphUserCallback()
                {
                    // callback after Graph API response with user object
                    @Override
                    public void onCompleted(GraphUser user, Response response)
                    {
                        if (user != null)
                        {
                            txtUserName.setText(session.getAccessToken());

                            saveUserData(user.getId(), user.getName(), user.getBirthday(), user.asMap().get("email").toString());
                            saveAccessToken(session.getAccessToken());

                            getFacebookUserProfilePicture(session.getAccessToken());
                        }
                    }
                });
            }
        }
    });
}

But, I can't get the email. Always is null.

I set up email permissions on User & Friend Permissions, on developers.facebook.com, but it doesn't work.

What am I doing wrong?

Upvotes: 2

Views: 2049

Answers (1)

dd619
dd619

Reputation: 6170

Use this code to open your session and you are ready to go!

String[] PERMISSION_ARRAY_READ = {"email","user_birthday"};
List<String> PERMISSION_LIST=Arrays.asList(PERMISSION_ARRAY_READ);
session.openForRead(new Session.OpenRequest(getParent()).setPermissions(PERMISSION_LIST).setCallback(statusCallback));

let me know if uyou have any problem regarding this.

Upvotes: 2

Related Questions