繁体   English   中英

Android Facebook SDK返回电子邮件为空

[英]android facebook sdk returns email null

我的应用之前使用过此代码,并且可以正常工作,但直到昨天才停止工作,不知道为什么。 我可以得到名字和图片。 但是电子邮件为空。

 List<String> permisions = Arrays.asList(
            "email");

    Session.openActiveSession(getActivity(), true, permisions , new Session.StatusCallback() {

          // callback when session changes state
          @Override
          public void call(Session session, SessionState state, Exception exception) {
            if (session.isOpened()) {

              // 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) {
                    String name = user.getFirstName();
                    String email = (String)user.getProperty("email");
                    System.out.println("Email: "+email);
                    System.out.println("Name: "+name);

                  }
                }

问题是,用户可能在其Facebook个人资料中设置了电子邮件,但可能将其设置为私人含义,即使他们已对其进行设置,也无法检索它,在这种情况下,您将获得空值。 您可能需要先使用null进行检查,然后使用该属性,否则代码流将在那里停止,并且将得到NPE,但不会发生任何错误,发生任何错误或发生任何事情。 检查一下: 在调用getProperty()之前检查facebook-sdk android是否为用户数据提供了空值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM