我目前正在尝试通过GraphUser api对象获取用户的电子邮件。
我设法获得名字,姓氏和其他所有内容,但不是电子邮件。
我做了我的研究,你需要添加一些权限来获取用户的电子邮件(登录电子邮件到facebook,而不是xxx@facebook.com)。我被卡住了!我如何在Android中执行此操作?
private class FacebookloginDelegateImpl extends FacebookloginDelegate
{
/*
* Optional callback method
*/
protected void onCompletedProgress(GraphUser user,
Response response)
{
Log.d("FB UserID:", user.getId());
Log.d("FB FirstName:", user.getFirstName());
Log.d("FB LastName:", user.getLastName());
Log.d("Object:", user.toString());
Log.d("Response:", response.toString());
//Log.d("FB Email:", (String) user.asMap().get("email"));
String userID = user.getId();
String firstname = user.getFirstName();
String lastname = user.getLastName();
String email= "";
try {
email = user.getInnerJSONObject().getString("email");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.d("FB Email:", email);
LoginActivity.this.requestFacebookLogin(userID, firstname, lastname);
//String stringData = "{\"ID\":\""+user.getId()+"\",\"Name\":\""+user.getName()+"\"}";
}
答案 0 :(得分:0)
您确定用户设置了另一封电子邮件而不是默认的facebook吗? Facebook强迫每个人都收到他们的电子邮件,你需要进入并更改它才能拥有另一个。