我正在重写一个应用程序以包含 Facebook 登录,并且我想获取用户的电子邮件地址。我已请求Session
对象的权限并仔细检查它,我可以看到它确实具有此权限。但是,当我打电话时
Request.executeMeRequestAsync(session, this);
从StatusCallback#call(...)
方法(父Activity
实现这个和其他回调)我没有得到一个电子邮件地址。
@Override
public void onCompleted(GraphUser user, Response response) {
Object emailObject = user.asMap().get("email"); //this is null
//...
}
此外,调用
Request.executeGraphPathRequestAsync(session, "me?fields=email", this);
给了我一个 OAuthException,尽管我使用的Session
是成功获取用户的相同。
我已经检查过了Session#getPermissions()
,我确实有电子邮件权限。为什么我没有收到电子邮件?