Получить список друзей facebook 3.0
Я пытаюсь получить список друзей из Facebook, используя новый SDK (3.0). Я сталкиваюсь с проблемами, связанными с тем, какие параметры мне нужно вставить в Bundle и как использовать newMyFriendRequest и GraphAPI.
Я не нашел в документации на Facebook место о том, какое поле нам нужно использовать. На основеGraphExplorer Я вставляю в свой Bundle ключ «поля» с этой строкой «id, name, friend» в качестве значения. Код ниже показывает, что я делаю сейчас. После того как я получу свою фотографию и имя, я выполню newMyFriendRequest. Я считаю, что он использует GraphAPI по умолчанию.
Я видел здесь на StackOverflow некоторые сообщения, связанные:
Как отправить запрос FQL с новым Android SDK
Параметры запроса Android SDK Facebook: где найти документацию?
Это мне мало помогает, и я не хочу использовать FQL. Для ответа я получаю этот JSON как ответ:
{Response: responseCode: 500, graphObject: null, error: {HttpStatus: 500, errorCode: 100, errorType: FacebookApiException, errorMessage: Unsupported operation}, isFromCache:false}
Обратите внимание, я очень новичок в Facebook SDK для Android.
private void onSessionStateChange(final Session session, SessionState sessionState, Exception ex){
if(session != null && session.isOpened()){
getUserData(session);
}
}
private void getUserData(final Session session){
Request request = Request.newMeRequest(session,
new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user, Response response) {
if(user != null && session == Session.getActiveSession()){
pictureView.setProfileId(user.getId());
userName.setText(user.getName());
getFriends();
}
if(response.getError() !=null){
}
}
});
request.executeAsync();
}
private void getFriends(){
Session activeSession = Session.getActiveSession();
if(activeSession.getState().isOpened()){
Request friendRequest = Request.newMyFriendsRequest(activeSession,
new GraphUserListCallback(){
@Override
public void onCompleted(List<GraphUser> users,
Response response) {
Log.i("INFO", response.toString());
}
});
Bundle params = new Bundle();
params.putString("fields", "id,name,friends");
friendRequest.setParameters(params);
friendRequest.executeAsync();
}
}