2013-02-28 5 views
9

Я искал последние два дня и не смог найти способ получить идентификатор пользователя и токен доступа из Facebook SDK 3.0 - Native Login.Facebook SDK 3.0 - Получить идентификатор пользователя Facebook и токен доступа

я слежу facebook родного логин - http://developers.facebook.com/docs/tutorials/androidsdk/3.0/scrumptious/authenticate/

и я получить маркер доступа с помощью Session.getAccessToken, я получаю некоторые маркера доступа, но это не является действительным. какова фактическая процедура? Я делаю неправильно?

Как получить UserId в Native Войти с помощью Facebook SDK 3.0

ответ

38

идентификатор пользователя:

final Session session = Session.getActiveSession(); 
    if (session != null && session.isOpened()) { 
     // If the session is open, make an API call to get user data 
     // and define a new callback to handle the response 
     Request request = Request.newMeRequest(session, new Request.GraphUserCallback() { 
      @Override 
      public void onCompleted(GraphUser user, Response response) { 
       // If the response is successful 
       if (session == Session.getActiveSession()) { 
        if (user != null) { 
         user_ID = user.getId();//user id 
         profileName = user.getName();//user's profile name 
         userNameView.setText(user.getName()); 
        } 
       } 
      } 
     }); 
     Request.executeBatchAsync(request); 
    } 

user_ID & profileName являются строки.

для маркера доступа:

String token = session.getAccessToken(); 

EDITED: (13/1/2014)

для пользователя электронной почты (я не проверял этот код работает на устройстве или эмуляторе):

это только мое мнение, или вы можете назвать это предложение

setReadPermissions(Arrays.asList("email", ...other permission...)); 
//by analyzing the links bellow, i think you can set the permission in loginbutton as: 
loginButton.setReadPermissions(Arrays.asList("email", ...other permission...)); 
user.asMap().get("email"); 

для получения дополнительной информации см: link1, link2, link3, link4,

+0

Вот как получить электронную почту пользователя ?? – 2014-01-13 12:36:02

+0

@ user2843350: Я поставил некоторое предложение в разделе 'EDITED: (13/1/2014)', зарегистрируйтесь и дайте мне знать. P.S .: Я давно не работаю с SDK в Facebook – Shoshi

Смежные вопросы