android parse sdk facebook登录无法获取电子邮件
Im将parse和FacebookSDK集成到我的项目及其工作中,我得到了facebook用户的id和用户名 我的问题是,我无法获得任何其他信息,如电子邮件、性别或任何其他信息,即使我为它们添加了权限 这是许可证:android parse sdk facebook登录无法获取电子邮件,android,facebook,facebook-graph-api,parse-platform,sdk,Android,Facebook,Facebook Graph Api,Parse Platform,Sdk,Im将parse和FacebookSDK集成到我的项目及其工作中,我得到了facebook用户的id和用户名 我的问题是,我无法获得任何其他信息,如电子邮件、性别或任何其他信息,即使我为它们添加了权限 这是许可证: private static final List<String> Permissions = Arrays.asList("public_profile","email","user_friends","user_birthday","user_location","u
private static final List<String> Permissions = Arrays.asList("public_profile","email","user_friends","user_birthday","user_location","user_relationships");
从facebook获取用户详细信息:
public String name,email;
ParseUser parseUser=new ParseUser();
private void getUserDetailsFromFB() {
GraphRequest request = GraphRequest.newMeRequest(
AccessToken.getCurrentAccessToken(),
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(
JSONObject object,
GraphResponse response) {
try {
String id=object.getString("id");
String name=object.getString("name");
String email=object.getString("email");
String gender=object.getString("gender");
String birthday=object.getString("birthday");
} catch (JSONException e) {
e.printStackTrace();
}
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,link,email");
request.setParameters(parameters);
request.executeAsync();
}
我只获取id和姓名以及任何其他信息给我任何建议?我遇到了完全相同的问题,以下是我解决问题的方法:
Nathanial访问此ink或在不使用parse im的2个解决方案中使用parse,因为它们包含在文档中,也适用于FB,所以它不应该是loginbutton,也不使用Session。我会在Graph API Explorer上使用相同的访问令牌尝试相同的调用,看看是否能拿回数据,如果不是,则这不是SDK问题,只是您无法访问数据(电子邮件)
public String name,email;
ParseUser parseUser=new ParseUser();
private void getUserDetailsFromFB() {
GraphRequest request = GraphRequest.newMeRequest(
AccessToken.getCurrentAccessToken(),
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(
JSONObject object,
GraphResponse response) {
try {
String id=object.getString("id");
String name=object.getString("name");
String email=object.getString("email");
String gender=object.getString("gender");
String birthday=object.getString("birthday");
} catch (JSONException e) {
e.printStackTrace();
}
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,link,email");
request.setParameters(parameters);
request.executeAsync();
}