从Android中的Facebook Graph api访问电子邮件ID和电话号码

时间:2013-06-12 12:39:11

标签: android facebook

我正在整合Facebook登录并访问用户的数据,我已经这样做了,但是有一个问题 - 它没有重新调整电子邮件ID或联系号码。

 private String buildUserInfoDisplay(GraphUser user) {
            StringBuilder userInfo = new StringBuilder("");


            userInfo.append(String.format("Name: %s\n\n", 
                user.getName()));


            userInfo.append(String.format("Birthday: %s\n\n", 
                user.getBirthday()));


            userInfo.append(String.format("Email: %s\n\n", 
                    user.getUsername()));

            userInfo.append(String.format("Gender: %s\n\n", 
                    user.getProperty("gender")));

            userInfo.append(String.format("Iddddddd: %s\n\n", 
                    user.getId()));

            userInfo.append(String.format("Location: %s\n\n", 
                user.getLocation().getProperty("name")));


            userInfo.append(String.format("Locale: %s\n\n", 
                user.getProperty("locale")));

            System.out.println("User info"+userInfo);




        }

用户信息会返回所有数据,但不会返回电子邮件ID或联系号码

1 个答案:

答案 0 :(得分:1)

好的,首先是第一件事:

 public static final String[] PERMISSIONS = new String[] {"email"};

  String response=authenticatedFacebook.request("me");
  JSONObject obj = Util.parseJson(response);
   useremail=obj.getString("email");`

其中authenticatedFacebook是Facebook对象。

Util将与Facebook SDK一起提供。但是,我认为util可能会被取消,因此您可以随时使用:user.getInnerJSONObject().getString("email");

确保您提供了电子邮件权限