简体   繁体   English

使用Facebook SDK Android获取用户ID和电子邮件

[英]Get user ID and Email using Facebook SDK Android

I am trying to get the logged in user's id and email. 我正在尝试获取登录用户的ID和电子邮件。 Here is my code: 这是我的代码:

authButton.setReadPermissions(Arrays.asList("basic_info","email"));
          // session state call back event
          authButton.setSessionStatusCallback(new Session.StatusCallback() {

   @Override
   public void call(Session session, SessionState state, Exception exception) {

        if (session.isOpened()) {
             Log.i(TAG,"Access Token"+ session.getAccessToken());
               Request.newMeRequest(session,
                   new Request.GraphUserCallback() {
          @Override
          public void onCompleted(GraphUser user,Response response) {
           if (response != null) { 
              Log.i(TAG,"User ID "+ user.getId());
               Log.i(TAG,"Email "+ user.asMap().get("email"));
                 }
                }
              });
           }
          }
     });

Everything goes ok till here 一切顺利,直到这里

Log.i(TAG,"Access Token"+ session.getAccessToken());

I can see the access token, but the onComplete method is not called, and i don't get any user info. 我可以看到访问令牌,但是没有调用onComplete方法,并且我也没有得到任何用户信息。

what am i doing wrong? 我究竟做错了什么?

Try 尝试

if (user != null)

instead of 代替

if (response != null)

or try 或尝试

Request.newMeRequest(...).executeAsync();

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

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