2015-05-26 3 views
0

Я работаю с Android SDK Android и у меня есть вопрос.Facebook Android SDK и сеансы

Итак, в потоке входа в обратном вызове сеанса мы получаем пользователя и ответ графа, и мы можем извлечь соответствующие данные из этих полей.

Но я хочу получать данные о пользователе каждый раз, когда приложение открыто.

Каков правильный способ достижения этого, если у пользователя нет входа в систему каждый раз, когда приложение должно извлекать данные пользователя.

signInWithFacebookButton.setReadPermissions(Arrays.asList("public_profile", "email")); 

    signInWithFacebookButton.setSessionStatusCallback(new Session.StatusCallback() { 
     @Override 
     public void call(Session session, SessionState state, Exception exception) { 
      if (session != null && state.isOpened()) { 
       Request.newMeRequest(session, new Request.GraphUserCallback() { 

        @Override 
        public void onCompleted(GraphUser user, Response response) { 
         if (response != null && user != null) { 
          new ParseLoginTask(user).execute(); 
         } 
         facebookProgressDialog.dismiss(); 
        } 
       }).executeAsync(); 
      } else { 
       facebookProgressDialog.dismiss(); 
      } 
     } 
    }); 

ответ

0

Вход Обновления в новом Facebook SDK, поэтому не используйте сеанс

Session Удалены - маркер доступа, LoginManager и классы CallbackManager заменяют и заменить функциональность в классе Session.

Токены доступа. Вы можете загрузить AccessToken.getCurrentAccessToken с SDK из кеша или если приложение холодно запущено из закладки приложения. Инструкции см. В Facebook Login for Android, Получить текущий токен.

И используйте SharedPreferene для сохранения данных пользователя.

Ссылка может помочь вам:

https://developers.facebook.com/docs/graph-api/using-graph-api/v2.3#readinghttps://developers.facebook.com/docs/graph-api/reference/user