Android Facebook SDk; могу ли я получить изображение обложки пользователя, используя его facebook id?

#android #facebook-graph-api #facebook-sdk-4.0

#Android #facebook-graph-api #facebook-sdk-4.0

Вопрос:

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

 http://graph.facebook.com/ "user_id" /picture?type=large 
  

но я не знаю, как получить их изображения обложки

я мог бы получить свою собственную фотографию обложки с помощью:

  GraphRequest request = GraphRequest.newMeRequest(
            AccessToken.getCurrentAccessToken(),
            new GraphRequest.GraphJSONObjectCallback() {
                @Override
                public void onCompleted(JSONObject object, GraphResponse response) {
                    // Insert your code here
                    loadTopUser();
                }
            });

    Bundle parameters = new Bundle();
    parameters.putString("fields", "cover");
    request.setParameters(parameters);
    request.executeAsync();
  

какие изменения я должен внести в этот запрос, чтобы получить фотографию обложки друзей, если нет статического URL, например,
http://graph.facebook.com / «user_id» /picture?type=large для получения обложки??

Ответ №1:

я нахожу ответ

Вы должны убедиться, что токен доступа не равен нулю и вы уже вошли в Facebook, чтобы не получить доступ к токенам, имеющим значение null

String id= 1234567910111213;

 new GraphRequest(
            AccessToken.getCurrentAccessToken(),
            "/ id ?fields=cover",
            null,
            HttpMethod.GET,
            new GraphRequest.Callback()
            {
                public void onCompleted(GraphResponse response)
                {
                    try
                    {
                        JSONObject jsonObject = response.getJSONObject();
                        if(jsonObject==null) 
                            return;
                        JSONObject JOSource = jsonObject.getJSONObject("cover");
                        String coverPhoto = JOSource.getString("source");

                    }
                    catch (JSONException e)
                    {
                        e.printStackTrace();
                    }
                }
            }
    ).executeAsync();