Сейчас я работаю над интеграцией входа в Facebook в своем приложении. Я не могу получить идентификатор электронной почты, дату рождения и аватарку. Я уже видел некоторые сообщения, исправляющие этот вопрос, они устарели. Это не работает должным образом.я пытаюсь
fb_login.setReadPermissions(Arrays.asList("public_profile", "email",
"user_birthday,user_gender"));
callbackManager = CallbackManager.Factory.create();
fb_login.registerCallback(callbackManager, new
FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
GraphRequest request = GraphRequest.newMeRequest(
AccessToken.getCurrentAccessToken(),
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(
JSONObject object,
GraphResponse response) {
// Application code
getDate(object);
Log.d("REsponse",response.toString());
Intent in = new Intent(MainActivity.this,Form.class);
startActivity(in);
finish();
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,link,gender");
request.setParameters(parameters);
request.executeAsync();
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException error) {
}
});
}
private void getDate(JSONObject object){
try {
URL profile_pic = new
URL("https://graph.facebook.com/"+object.getString("id")+"/picture?width =
250&height=250");
Picasso.with(this).load(profile_pic.toString()).into(image);
id.setText(object.getString("id"));
name.setText(object.getString("name"));
email.setText(object.getString("email"));
gende.setText(object.getString("gender"));
birthday.setText(object.getString("birthday"));
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent
data) {
callbackManager.onActivityResult(requestCode, resultCode, data);
super.onActivityResult(requestCode, resultCode, data);
}
я получаю только имя и фейсбук id.i мне нужна ваша помощь, ребята.