Here is my code for getting user information after facebook login. I am trying to get emailid from user I am getting Name , id , but not getting the emailid .I have tried with the Login Button and Login Manager class both giving the same results . Now how to get email id from response :
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(final LoginResult loginResult) {
new GraphRequest(AccessToken.getCurrentAccessToken(),
"/me", null , HttpMethod.GET,
new GraphRequest.Callback() {
public void onCompleted(
GraphResponse response) {
handle the result
if (response !=null )
{
//GET USER INFORMATION
Toast.makeText(getApplicationContext(),"Hello in JSON",Toast.LENGTH_LONG).show();
JSONObject json = response.getJSONObject();
//JSONArray jsona = response.getJSONArray();
Log.i(TAG,"" +json);
// Log.i(TAG,"" +json);
String email = json.optString("email");
// String email = json.optString("email");
//Log.i("email", "" + email);
Log.i(TAG,"" +email);
String fullName = json.optString("name");
String location = json.optString("location");
String accessToken = loginResult.getAccessToken().getToken();
String user_id = json.optString("id");
Log.i(TAG,"" +json);
Toast.makeText(getApplicationContext(),fullName,Toast.LENGTH_LONG).show();
Toast.makeText(getApplicationContext(),email,Toast.LENGTH_LONG).show();
Toast.makeText(getApplicationContext(),user_id,Toast.LENGTH_LONG).show();
//int type = 1;
// String lastUpdate = json.getString("updated_time");
// Log.i("email", "" + email);
// Log.i("Message", "HELLO");
Log.i("Name", "" + fullName);
Log.i("ID", "" + user_id);
}
}
}).executeAsync();
Thanks..!!