API do Facebook para Android: como obter informações estendidas sobre os amigos do usuário?

Estou trabalhando em um pequeno aplicativo Android, tentando adicionar suporte ao Facebook.

Problema principal: posso obter apenas informações básicas sobre os amigos do usuário (id, nome). Lista de permissões de aplicativos (offline_access está aqui apenas para teste, será removido em breve):

 String[] sPermissions = { "friends_about_me"
                         , "friends_birthday"
                         , "friends_location"
                         , "friends_website"
                         , "offline_access" };
 mLoginButton.init(this, mFacebook,  sPermissions);

A solicitação a seguir funciona bem - retorna uma lista de id: pares de nomes,

 mAsyncRunner.request("me/friends", new SampleRequestListener());

mas se eu mudar para obter mais informações

 mAsyncRunner.request("me/friends?fields=id,name,birthday,hometown", new SampleRequestListener());

servidor retorna erro "Um token de acesso ativo deve ser usado para consultar informações sobre o usuário atual." Testei essas solicitações da API do Graph usando o navegador - ambas funcionam conforme o esperado.

Pequena observação: estou usando o cetificate de depuração padrão para assinar a aplicação e adicioná-lo como hash de aplicativo do Facebook de acordo com as instruções do Facebook:

Registre o hash da chave Android do seu aplicativo. Isso é usado pelo Facebook para garantir que outro aplicativo não possa se passar por ele ao conversar com o aplicativo do Facebook para Android.

Gere o hash da chave:

keytool -exportcert -alias [alias] -keystore [keystore] | openssl sha1 -binário | openssl base64 Nas configurações de desenvolvedor do Facebook, vá para a guia Dispositivos móveis.

Na seção Android, digite o hash da chave no campo Key Hash.

Talvez exista outra maneira de obter informações sobre os frineds do usuário (aniversário, localização, sexo e assim por diante)?

questionAnswers(3)

yourAnswerToTheQuestion