android-fb-sdk электронная почта всегда пуста
У меня большая проблема с android-facebook-sdk 3.19.1. Нет проблем с получением публичной информации о пользователе, но невозможно получить адрес электронной почты.
Я знаю, что мое сообщение очень близко к следующей теме ==> Facebook android sdk -user email возвращает ноль, но пока у меня нет решения.
Так вот мой код
В моем ConnectionActivity.java у меня есть кнопка R.id.fb_connect
private List<String> permissions = Arrays.asList("email");
@Click(R.id.fb_connect)
protected void fbConnect() {
ensureOpenSession();
}
private boolean ensureOpenSession() {
Session session = Session.getActiveSession();
if (session == null || !session.isOpened()) {
LOGD(TAG, "Call Session.openActiveSession");
Session.openActiveSession(this, true, permissions, new FbCallback());
return false;
}
return true;
}
public class FbCallback implements Session.StatusCallback {
@Override
public void call(Session session, SessionState sessionState, Exception e) {
// make request to the /me API
Request.newMeRequest(session, new Request.GraphUserCallback() {
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
// user.asMap().get("email");
Toast.makeText(ConnectionActivity.this, "email : " + user.getProperty("email"), Toast.LENGTH_LONG).show();
}
}
}).executeAsync();
}
}
Я также попробовал код в ссылке выше, но он не работает. С одной точностью, с этим кодом, я вижу активность на Facebook, которая гласит: "XXX получит следующую информацию: ваш общедоступный профиль и адрес электронной почты", но на тосте отображается "email: null"
РЕДАКТИРОВАТЬ
Я работаю с Android Studio, и мой файл Gradle имеет следующую строку
compile 'com.facebook.android:facebook-android-sdk:3.19.1'
EDIT2
Если я использую
LOGD(TAG, "isPermissionGranted : " + session.isPermissionGranted(permissions.get(0)));
перед звонком Request.newMeRequest
так верно показано. Разрешение правильно предоставлено
Спасибо